`
mwhgJava
  • 浏览: 94922 次
  • 性别: Icon_minigender_1
  • 来自: 广州
社区版块
存档分类
最新评论

JUNIT4 笔记(五) 测试套

阅读更多
测试套包含一个或多个需要被一起执行的测试用例或测试套。
测试套需要在类名前加@RunWith(Suite.class) 表示不使用默认的测试运行器,使用指定的测试运行器,在这里Suite.class就是指定的测试运行器。并用@Suite.SuiteClasses指定该测试套包含的其他测试用例或测试套。
import org.junit.runner.RunWith;
import org.junit.runners.Suite;

@RunWith(Suite.class)
@Suite.SuiteClasses({
MyTestCase.class, //测试类
PartSuite.class,  //另一个测试套
})
public class AllTestCases {
}

需要注意的是,不要出现测试套循环嵌套的情况。否则,你就等着执行不完的测试用例吧。Junit4提供的默认测试运行器,在执行时发现自嵌套, 会产生initializationError,提示测试套自包含了,或间接自包含了。

测试套中的tearUp和tearDown。
执行测试套时,不会实例化测试套类。
测试套类中的
@BeforeClass  修饰一个公有无参数无返回值的类方法(public | void | no parameters | static),在执行测试套的第一个测试类或测试套之前调用。
@AfterClass  修饰一个公有无参数无返回值的类方法(public | void | no parameters | static),在执行完测试套的最后一个测试类或测试套之后调用。
同样不推荐测试类有多个@ BeforeClass,多个@AfterClass。

小结,执行测试套时的方法调用顺序。
  1. TestSuite的@BeforeClass
  2. TestCase的@BeforeClass
  3. TestCase的构造方法。
  4. TestCase的@Before
  5. TestCase的@Test
  6. TestCase的@After
  7. TestCase的@AfterClass
  8. TestSuite的@AfterClass

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics