(04)Junit初识

Junit是一个Java语言的单元测试框架,被开发者用于实施对应用程序的单元测试,加快程序编制速度,同时提高编码的质量。是一个在发展,现在已经到junit5,在javaEE开发中与很多框架相集成,使得开发者很方便。

首先介绍 Junit 的几种类似于 @Test 的注解:

1.@Test: 测试方法,在这里可以测试期望异常和超时时间

a)(expected=XXException.class)如果程序的异常和XXException.class一样,则测试通过

b)(timeout=100)如果程序的执行能在100毫秒之内完成,则测试通过

2.@Ignore: 被忽略的测试方法:加上之后,暂时不运行此段代码

3.@Before: 每一个测试方法之前运行,初始化方法

4.@After: 每一个测试方法之后运行,释放资源

5.@BeforeClass: 方法必须必须要是静态方法(static 声明),所有测试开始之前运行,注意区分before,是所有测试方法;针对所有测试,只执行一次,且必须为static void

6.@AfterClass: 方法必须要是静态方法(static 声明),所有测试结束之后运行,注意区分 @After;针对所有测试,只执行一次,且必须为static void

7.@RunWith:指定使用的单元测试执行类

Junit测试用例执行顺序:

@BeforeClass ==> @Before ==> @Test ==> @After ==> @AfterClass

过程:就是先加载模拟的环境,再进行测试。

那么上面的例子,我们可以看到,每个 @Test 方法中都有 Calculator c = new Calculator();即类的实例化,那么我们可以将其放入到 @Before 中


编写测试类的原则:

​ ①测试方法上必须使用@Test进行修饰

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

​ ③新建一个源代码目录来存放我们的测试代码,即将测试代码和项目业务代码分开

​ ④测试类所在的包名应该和被测试类所在的包名保持一致

​ ⑤测试单元中的每个方法必须可以独立测试,测试方法间不能有任何的依赖

​ ⑥测试类使用Test作为类名的后缀(不是必须)

​ ⑦测试方法使用test作为方法名的前缀(不是必须)

你可能感兴趣的:((04)Junit初识)