JUnit单元测试
- 什么是测试**
```plain text * 软件开发的工作,开发系统之后,存在很多的问题(bug)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
* 开发人员很难找到这些问题(bug)
* 软件公司有一类人:测试人员
* 测试人员的主要工作就是帮助开发人员找到研发系统的一些问题(bug)
* 测试的分类:
* 功能性测试
* 逻辑性测试
* 业务性测试
* ...
* 测试的作用:
* 商业性的信息系统(收费)
* 要求:必须可以用
* 专业性测试(测试人员):
* 具有很多专业工具:
* 测试用力
* 测试软件
* ... ```
黑盒与白盒
```plain text 黑盒测试,俗称功能测试,通过黑盒测试,测试系统的功能完整性。
白盒测试,俗称逻辑测试,通过白盒测试,测试系统的逻辑是否正确。
1
2
3
4
5
6
7
8
9
10
11
12
13
**JUnit**
```plain text
JUnit就是java语言提供的一个白盒测试的工具
1.用于测试期望结果的断言
2.用户共享共同测试数据的测试工具
3.方便的组织和运行测试的测试套件
4.图形和文本的测试运行器
单元测试
```plain text 手工使用JUnit测试
1
*public修饰,不能有返回值,无参,不能是静态的
Assert对象
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
JUnit类提供的一个断言对象
Assert对象的assertEquals(expected,actual)方法:匹配方法
expected:预期的结果
开发都会有预期的结果
actual:通过测试得到的结果
结果匹配则测试通过
单元测试:
实际开发中,具有很多类
对应每一个类,具有对应的一个测试类
测试类用来测试该类的所有方法
注解:
@Test 测试该方法必要注解
@Ignore 忽略,加上该注解的方法不测试
@Before 在测试方法之前,运行该方法
主要用于测试前的准备工作
@After 在测试方法运行后,运行该方法
主要用于测试后的收尾工作
@BeforeClass 在@Before之前运行该方法
该注解的方法必须时静态的 static
主要用于测试(类)之前的准备工作
@AfterClass 在@After之后运行该方法
该注解的方法必须时静态的 static
主要用于测试(类)之后的工作 ```
assertThat()
本文由作者按照 CC BY 4.0 进行授权