关闭

【JUnit】BeforeClass、AfterClass、Before与After示例

标签: junit测试
135人阅读 评论(0) 收藏 举报
分类:

一、初始化标注

在老Junit4提供了setUp()和tearDown(),在每个测试函数调用之前/后都会调用。

@Before: Method annotated with @Before executes before every test.
@After:   Method annotated with @After executes after every test.

 

如果在测试之前有些工作我们只想做一次,用不着每个函数之前都做一次。比如读一个很大的文件。那就用下面两个来标注:

@BeforeClass
@AfterClass

注意:

@Before/@After 可以有多个; @BeforeClass/@AfterClass 只有一个

如果我们预计有Exception,那就给@Test加参数:

@Test(expected XXXException.class)

 

如果出现死循环怎么办?这时timeout参数就有用了:

@Test(timeout 1000)

 

如果我们暂时不用测试一个用例,我们不需要删除或都注释掉。只要改成:

@Ignore

你也可以说明一下原因@Ignore("something happens")

  测试加载顺序


【代码片段】

public class TestIt {
private TestJUnit tju = null;
@BeforeClass
public static void enter() {
System.out.println("进来了!");
}
@Before
public void init() {
System.out.println("正在初始化。。");
tju = new TestJUnit();
System.out.println("初始化完毕!");
} @Test
 public void testit() { 
tju.run();
}
@After
public void destroy() {
System.out.println("销毁对象。。。");
tju = null;
System.out.println("销毁完毕!");
}
@AfterClass
public static void leave() {
System.out.println("离开了!");
}
}

【运行结果】

进来了!
正在初始化。。
初始化完毕!
Hello,JUnit
销毁对象。。。
销毁完毕!
离开了!
0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:366173次
    • 积分:4290
    • 等级:
    • 排名:第7374名
    • 原创:23篇
    • 转载:444篇
    • 译文:1篇
    • 评论:32条
    最新评论