首页 > 代码库 > JUnit4 学习感悟

JUnit4 学习感悟

2016-09-07 22:31:14

1.测试方法必须使用@Test进行修饰

2.测试方法必须使用public void 进行修饰,不能带任何参数

3.新建一个源代码目录来存放我们的测试代码
4.测试类的包应该和被测试类保持一致
5.测试单元中的每个方法必须可以独立测试,测试方法间不能有任何的依赖
6.测试类使用Test作为类名的后缀(非必须)
7.测试方法必须使用test作为方法名的前缀(非必须)
---进行了6,7 后,可以显得很规范

测试用例用来达到想要的预期结果,但对于逻辑错误无能为力。

JUnit4 eclipse视图中的两个字段:Failure和error

1.Failure一般由单元测试使用的断言方法判断失败所引起的,这表示测试点发现了问题,

就是说程序输出的结果和我们语气的不一样

2.error是由代码异常引起的,他可以产生于测试代码本身的错误,也可以是被测试代码中的一个隐藏bug

测试用例不是用来证明你是对的,而是用来证明你没有错。

JUnit中的4个方法修饰注解:@BeforeClass,@AfterClass,@Before,@After

1.@BeforeClass修饰的方法会在所有的方法被调用前被执行,

该方法为静态,所以当测试类被夹在后接着就会运行他,而且在内存中它只会存在一份实例,它比较适合夹在配置文件。

2.@AfterClass所修饰的方法通常用来对资源的清理,如关闭数据库的连接等

3.@Before和,@After会在每个测试方法的前后各执行一次。

JUnit4的注解

@Test--将一个普通的方法修饰成一个测试方法
@Test(expected=XX.class)expected参数可以抛出测试方法中可能的异常,那么在遇到这个异常的时候也会认为是OK的。
@Test(timeout=毫秒)timeout参数,可以设置方法执行的超时时间,如性能测试,读文件的时间等。
@BeforeClass--它会在所有的方法运行前被执行,static修饰
@AfterClass--它会在所有的方法运行结束后被执行,static修饰
@Before--会在每一个测试方法被运行前执行一次
@After--会在每一个测试服那个发被运行后被执行一次
@Ignore--所修饰的测试方法会被测试运行器忽略,不被执行。 可以带参数,表明不被执行的原因@Ignore("不想执行这个方法")。
@RunWith--可以更改测试运行器 org.junit.runner.Runner

 

JUnit4的测试套件

1.测试套件就是组织测试类一起运行的

如何写一个测试套?  首先写一个作为测试套的入口类,这个类里不能包含其他方法
更改测试运行器为 Suite.class,将要测试的类作为数组传入到Suite.SuiteClasses({}),如下图

技术分享

 

 

 

 

JUnit4 学习感悟