2010-04-29 29 views

Trả lời

4

Trong MSTest bạn có TestInitializeAttribute

Khi chạy trong một thử tải, các phương pháp đánh dấu với thuộc tính này sẽ chạy một lần cho mỗi lần lặp sử dụng ảo trong các thử nghiệm. Nếu bạn cần thực hiện các thao tác khởi tạo một lần, điều đó áp dụng cho toàn bộ thử nghiệm, hãy sử dụng ClassInitializeAttribute.

AssemblyInitializeAttribute được chạy một lần cho tất cả các bài kiểm tra trong tất cả các lớp.

4

Trong NUnit, bạn có TestFixtureSetUp chỉ chạy một lần trước khi tất cả các thử nghiệm trong chạy cố định và SetUp chạy trước mỗi phương pháp thử nghiệm được chạy.

3

Điều này tự nhiên phụ thuộc vào khung công tác và đối với các câu trả lời cụ thể, bạn nên kiểm tra tài liệu liên quan.

Thiết lập các phương pháp để thử nghiệm hoặc đồ đạc hữu ích, nhưng chúng không nên bị lạm dụng. Nếu các bài kiểm tra đơn vị có complex set up methods, bạn có thể tranh luận rằng chúng có nhiều bài kiểm tra tích hợp hơn, và do đó nên được tái cấu trúc. Một thiết lập thử nghiệm phức tạp là một mùi mã. Mặt khác, thiết lập các phương pháp được sử dụng một cách khôn ngoan có thể làm giảm trùng lặp và làm cho các bài kiểm tra dễ đọc hơn và có thể duy trì được.

1

Trong junit4 bạn có chú thích có sẵn để đánh dấu cả hai loại phương pháp thiết lập/teardown. Dưới đây là tóm tắt:

  • chạy setup trước mỗi bộ kiểm tra sử dụng @BeforeClass
  • chạy xé xuống sau mỗi bộ kiểm tra sử dụng @AfterClass
  • chạy setup trước mỗi phương pháp thử nghiệm sử dụng bộ phần mềm của bạn @Before
  • chảy nước mắt sau mỗi phương pháp thử trong bộ dụng cụ của bạn @After
Các vấn đề liên quan