1. junit用法,before,beforeClass,after, afterClass的执行顺序
发布日期:2021-08-17 20:34:59 浏览次数:2 分类:技术文章

本文共 1308 字,大约阅读时间需要 4 分钟。

一个JUnit4的单元测试用例执行顺序为:

@BeforeClass -> @Before -> @Test -> @After -> @AfterClass; 

每一个测试方法的调用顺序为:

@Before -> @Test -> @After;

 

代码示例:

1 /** 2  * @author GrimMjx 3  */ 4 public class JunitTest { 5  6     @BeforeClass 7     public static void beforeClass(){ 8         System.out.println("BeforeClass"); 9     }10 11     @Before12     public void before(){13         System.out.println("Before");14     }15 16     @Test17     public void test(){18         System.out.println("Test");19     }20 21     @Test22     public void test2(){23         System.out.println("Test2");24     }25 26     @After27     public void after(){28         System.out.println("After");29     }30 31     @AfterClass32     public static void afterClass(){33         System.out.println("AfterClass");34     }35 }

执行结果:

BeforeClass

Before
Test
After
Before
Test2
After
AfterClass

 

@BeforeClass、@AfterClass和@Before、@After的对比

 

 

1.@BeforeClass 和 @AfterClass 对于那些比较“昂贵”的资源的分配或者释放来说是很有效的,因为他们只会在类中被执行一次。相比之下对于那些需要在每次运行之前都要初始化或者在运行之后 都需要被清理的资源来说使用@Before和@After同样是一个比较明智的选择;

2.如果类里面可以有多个注解过@Before和@After的方法,它们的执行顺序是未知的;

3.@BeforeClass  @AfterClass注解是junit提供的另外的两个注解,必须设置在public 静态方法之上,表示在class加载之前执行,这样设置的方法只会执行一次,而@Before @After则会再每次test之前/之后执行;

4.在JUnit4中,如果测试类继承了TestCase类,那么所有的Annotation都不会起作用。

 

转载于:https://www.cnblogs.com/GrimMjxCl/p/9296634.html

转载地址:https://blog.csdn.net/weixin_30867015/article/details/96616863 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!

上一篇:hdu 3480 Division(斜率优化DP)
下一篇:ssh免密码登录

发表评论

最新留言

做的很好,不错不错
[***.243.131.199]2024年04月19日 13时04分24秒