Juint4 @BeforeClass @AfterClass 等 都不执行 的解决方案 博客分类: junit技术 junit4annotation@AfterClass 等不执行解决方案
程序员文章站
2024-02-13 09:17:52
...
1、现象
@BeforeClass和@AfterClass注解的方法不执行。
2、原因
@BeforeClass和@AfterClass是JUnit4得新特性,标记有@BeforeClass的方法会载所有的测试方法执行开始前运行,标记有@AfterClass的方法会在所有的测试方法运行结束后执行。
可是在运行的时候,始终无法通过。仔细检查代码,原因是测试类继承了TestCase类。在JUnit4中,如果测试类继承了TestCase类,那么所有的Annotation都不会起作用。在程序中,所有的Annotation都不起作用了,但是testMethodA的命名符合TestCase中测试方法的规范,所以该方法还是会被执行,但是由于createTestData没有执行,测试数据没有被创建,方法执行当然会失败。
3、解决方案
只要去掉extends TestCase即可。
@BeforeClass和@AfterClass注解的方法不执行。
2、原因
@BeforeClass和@AfterClass是JUnit4得新特性,标记有@BeforeClass的方法会载所有的测试方法执行开始前运行,标记有@AfterClass的方法会在所有的测试方法运行结束后执行。
可是在运行的时候,始终无法通过。仔细检查代码,原因是测试类继承了TestCase类。在JUnit4中,如果测试类继承了TestCase类,那么所有的Annotation都不会起作用。在程序中,所有的Annotation都不起作用了,但是testMethodA的命名符合TestCase中测试方法的规范,所以该方法还是会被执行,但是由于createTestData没有执行,测试数据没有被创建,方法执行当然会失败。
3、解决方案
只要去掉extends TestCase即可。