JUnit测试简介
1.什么是单元测试
- 单元测试是针对最小的功能单元编写测试代码
- Java程序最小的功能单元是方法
- 单元测试就是针对单个Java方法的测试
2.测试驱动开发
3.单元测试的好处
- 确保单个方法运行正常
- 如果修改了方法代码,只需确保其对应的单元测试通过
- 测试代码本身就可以作为示例代码
- 可以自动化运行所有测试并获得报告
4.Junit的设计
- TestCase:一个TestCase表示一个测试
- TestSuite:一个TestSuite包含一组TestCase,表示一组测试
- TestFixture:一个TestFixture表示一个测试环境
- TestResult:用于收集测试结果
- TestRunner:用于运行测试
- TestListener:用于监听测试过程,收集测试数据
- Assert:用于断言测试结果是否正确
总结
- 一个TestCase包含一组相关的测试方法
- 使用Assert断言测试结果(注意浮点数assertEquals要指定delta)
- 每个测试方法必须完全独立
- 测试代码必须非常简单
- 不能为测试代码再编写测试
- 测试需要覆盖各种输入条件,特别是边界条件