第 4 章:单元测试——专注于当下而非过往
学习单元测试到底是什么、它与功能测试和集成测试有何不同以及它在测试驱动开发中扮演的角色。
本章的主要目标是我们编写了大量辅助类,并尽量忽略其内部工作原理。
很多情况下,我们编写规范时都没有验证最终结果是否正确,而检查待实现的方法是否调用了辅助类的正确方法。
本章旨在让你学会如何专注于当前要开发的单元,并忽略或隔离已完成的单元。
本章目录及程序实现
- 单元测试
1.1 何为单元测试
1.2 为何要进行单元测试
1.3 代码重构
1.4 为何不只使用单元测试 - TDD 中的单元测试
- TestNG
3.1 注解 @Test
3.2 注解 @BeforeSuite、 @BeforeTest、 @BeforeGroups、 @AfterGroups、 @AfterTest和 @AfterSuite
3.3 注解 @BeforeClass 和 @AfterClass
3.4 注解 @BeforeMethod 和 @AfterMethod
3.5 注解参数 @Test(enable = false)
3.6 注解参数 @Test(expectedExceptions = SomeClass.class)
3.7 TestNG 和 JUnit 差别小结 - “遥控军舰”的需求
- 开发“遥控军舰” 实现
小结
- 介绍如何每次专注于一个单元。进行单元测试时,应专注于当前的单元。
- 学习使用测试框架TestNG。
- 开发“遥控军舰”应用程序,以充分展示TDD在单元测试中的威力。