测试用例定义
测试用例是用于特定目标的一组测试输入、执行条件和预期结果,例如执行特定程序路径或验证是否符合特定要求
自动化测试包括4个阶段
设置环境
执行测试
验证结果
清理环境
使用stub和mock进行测试
测试替身是为了消除被测系统的依赖性。测试替身是一个对象,该对象负责模拟依赖项的行为。
Stub
stub是一个测试替身,它代替依赖项向被测系统发送调用的返回值。
Mock
mock也是一个测试替身,用来验证被测系统是否正确调用了依赖项。此外,Mock也常扮演stub的角色,向被测系统发送调用的返回值。
测试的不同类型
单元测试
测试服务的一小部分,如类
集成测试
验证服务是否可以与基础设施服务(如数据库)或其他应用程序服务进行交互
组件测试
单个服务的测试验收
端到端测试
整个应用程序的验收测试
使用测试金字塔指导工作
测试金字塔描述了需要编写的每种测试策略的相对比例。在金字塔中从下往上移动时,应该编写的测试越来越少。
消费者驱动测试
验证服务是否满足它的消费者的期望
部署流水线
测试代码部署流水线阶段如下:
1.提交前测试阶段
2.提交测试阶段
3.集成测试阶段
4.组件测试阶段
5.部署阶段
单元测试
单元测试是测试金字塔的最低级别。它们是面向技术的测试,目标是协助开发。单元测试验证单元(服务的很小一部分)是否正常工作。单元通常是一个类,因此单元测试的目标是验证这个类的行为是否符合预期
独立型单元测试
使用针对类的依赖性的模拟对象隔离测试类
协助型单元测试
测试一个类及其依赖项