一些后端测试的东西
后端测试都测试些什么
- 接口测试
- 最小单元测试
- 联调测试
接口测试
接口测试要素
可重复性
异常覆盖
环境一致
如何进行方便的接口测试
测试工具: idea-httpRequest , apifox , postman, jmeter
如何使用idea进行高效的接口测试
编写接口
启动项目直接点击接口启动
编写自己的httpi请求
直接所有的类型请求
可以参照Example进行编写
接口测试结果
HTTP/1.1 200
Content-Type: application/json
Transfer-Encoding: chunked
Date: Thu, 30 Nov 2023 06:16:00 GMT
Keep-Alive: timeout=60
Connection: keep-alive
{
"id": 1,
"name": "testName",
"school": "Pkhu"
}
Response file saved.
> 2023-11-30T141600.200.json
这里会对请求的参数和结果进行记录,保证了测试的可重复性
读取环境配置
如何进行单元测试‘
什么是单元测试
单元测试是针对软件中的最小可测试部分(通常是函数或方法)进行的测试。单元测试的目的是验证这些最小单元的行为是否符合预期,通常是通过编写测试用例来实现。单元测试通常是自动化的,可以在开发过程中频繁地运行,以确保代码的正确性和稳定性。
单元测试的好处包括:
可以快速发现和定位代码中的问题,有助于提高代码质量。
可以在修改代码后快速验证代码的正确性,有助于防止引入新的问题。
可以作为文档,帮助其他开发人员理解代码的预期行为。
单元测试通常是软件开发中的重要环节,也是保证软件质量的重要手段之一。
代码覆盖率测试
一些专业的术语:
代码覆盖率测试是一种衡量软件测试质量的指标,用于评估测试用例是否覆盖了源代码中的各个部分。代码覆盖率测试通常包括以下几种类型:
语句覆盖(Statement Coverage):衡量测试用例是否覆盖了源代码中的每一条语句。
分支覆盖(Branch Coverage):衡量测试用例是否覆盖了源代码中的每个分支(例如 if 语句中的每个分支)。
条件覆盖(Condition Coverage):衡量测试用例是否覆盖了源代码中的每个条件表达式的各种可能取值。
路径覆盖(Path Coverage):衡量测试用例是否覆盖了源代码中的每个可能的执行路径。
如何进行代码覆盖率测试
代码包结构
1 编写测试代码
@SpringBootTest(classes = DemoApplication.class)
@Slf4j
public class DemoTest {
@Autowired
private Service testService ;
@Test
public void getGetStundetById(){
Student stu = testService.getStudentById("1") ;
log.info(stu.toString());
Assertions.assertNotNull(stu);
}
}
2 点击覆盖率测试
3 可自由设置需要测试的包
覆盖测试结果
结果解读–测试代码没有走controller 故而覆盖率为0 ,
service代码为
可以对结果进行导出