软件开发中的测试、集成、交付及相关实践
1. 测试基础与TDD
在软件开发中,测试是确保软件质量的关键环节。可以在任何平台上基于浏览器执行测试,并且能通过实时图表跟踪测试活动。不过,使用Azure Test需要有有效的MTM许可证。
1.1 测试驱动开发(TDD)
TDD由Kent Beck开创,它是极限编程(XP)的核心实践之一。即使不采用XP,也能利用TDD帮助开发者编写更好的代码。TDD依赖于一个非常短的开发循环的重复:
- 开发者首先编写一个最初会失败的自动化测试用例,该用例定义了一个期望的改进或新功能。
- 然后编写最少的代码使测试通过。
- 最后将新代码重构到可接受的标准。
与传统软件开发先设计模块、再编码、最后测试不同,TDD是先进行测试。也就是说,在有一个失败的测试之前,不编写任何生产代码。在传统开发中,测试用于验证现有代码是否正确编写;而在TDD中,测试用于在编写类之前定义其行为。
为了获得关于所编写代码的持续反馈,TDD需要频繁运行测试。代码的更改若导致一个或多个测试失败,应立即得到通知。可以将Visual Studio 2015配置为在构建后自动运行单元测试,这样代码编译后会立即运行所有测试并生成结果反馈,反馈循环非常短。
1.2 自动化测试
要实现自动化测试的目标,需要提前规划,思考自动化测试想要达到的效果。Visual Studio 2015有助于设置测试环境并选择要使用的测试类型。它支持多种不同的测试类型,具体如下表所示:
| 测试类型 | 目的 |
| — | — |
| 基本单元测试 | 一个空的单元测
超级会员免费看
订阅专栏 解锁全文

被折叠的 条评论
为什么被折叠?



