单元测试——基于SpringBoot
什么是单元测试?
- 单元测试是在软件开发过程中要进行的最低级别的测试活动,软件的独立单元将在与程序的其他部分相隔离的情况下进行测试。
基于SpringBoot中的单元测试
-
以IDEA编译器为例,生成单元测试类方法:快捷键(Crtl+shift+T),或者光标移至要测试的类,右键->Go To->Test
-
测试类上放添加@Runwith(SpringRunner.class) 与 @SpringBootTest注解
-
测试中常用方法
junit中常用测试方法 描述 assertEquals(Object expected,Object actual); 判断是否相等(期待值,实际值),可以指定输出错误信息 assertNotEquals(Object expected,Object actual); 判断是否不相等(期待值,实际值),可以指定输出错误信息 assertNotNull / Null(Object obj); 判读一个对象是否非空 (非空) -
下面是单元测试案例
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
public class CategoryServiceImplTest {
private CategoryServiceImpl categoryService;
//测试查找一个
public void findOne() {
ProductCategory productCategory = categoryService.findOne(1);
Assert.assertEquals(new Integer(1),productCategory.getCategoryId());
}
//测试查找全部
public void findAll() {
List<ProductCategory> productCategoryList = categoryService.findAll();
Assert.assertNotEquals(0,productCategoryList.size());
}
//测试查找类目
public void findByCategoryTypeIn() {
List<ProductCategory> productCategoryList = categoryService.findByCategoryTypeIn(Arrays.asList(1, 2, 3, 4));
Assert.assertNotEquals(0,productCategoryList.size());
}
//测试保存
public void save() {
ProductCategory productCategory = new ProductCategory("男生最爱", 8);
ProductCategory result = categoryService.save(productCategory);
Assert.assertNotNull(result);
}
} -
总结:熟练地使用单元测试,可以更好帮助我们快速、准确的开发程序中某个模块的功能,而不是全部写好后运行时再慢慢debug。编写一个模块后立即进行单元测试,这对于后端开发人员来说是一个好习惯。
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 515code-实验室!
评论