2010-04-29 48 views

回答

4

在MSTest的,你有TestInitializeAttribute

当负荷试运行,标志着具有这种属性的方法将在测试每个虚拟用户重复运行一次。如果您需要进行一次初始化操作,适用于整个测试,请使用ClassInitializeAttribute

AssemblyInitializeAttribute对所有类的所有测试运行一次。

4

在NUnit中,您有TestFixtureSetUp,它在夹具运行的所有测试运行前只运行一次,而在运行每种测试方法前运行的运行SetUp

3

这当然取决于框架,对于具体的答案你应该检查相关的文档。

设置测试方法或固定装置是有用的,但不应滥用。如果单元测试有complex set up methods你可能会认为它们更像集成测试,因此应该重构。一个复杂的测试设置是一种代码味道。另一方面,明智地使用方法可以减少重复并使测试更具可读性和可维护性。

1

junit4你有注释可用来标记这两种安装/拆卸方法。以下是摘要:

  • 每个测试套件使用前运行安装程序@BeforeClass
  • 运行的每个测试套件使用@AfterClass
  • 在套房内使用的每个测试方法之前运行安装程序后推倒@Before
  • 运行拆除每个测试方法后在您的套件中使用@After
相关问题