TDD INTRUDUCTION
tdd INTRUDUCTION.Test-Driven Development(TDD) is an integral part of Agile processes. Importing TDD in our project might benefit both project management and personal growth. Test-Driven Development (TDD) 是敏捷开发过程中的核心组成部分,它对项目管理和个人技能提升都有积极的影响。TDD 的核心理念是通过编写测试用例来驱动代码的编写,这样可以确保软件的质量,并且使开发者在修改代码时更加自信。 测试通常被认为是枯燥、重复、必要的,但人为进行测试容易出错,而且最好是开发者自己完成,而不是让用户发现错误。而计算机恰好擅长处理无聊、重复和可能出错的任务。因此,TDD 就是利用这一点,让计算机帮助我们进行自动化测试。 成为“懒惰”的开发者意味着你需要投入一些努力来定义计算机应该如何执行测试。一旦你编写了自动化测试脚本,就可以随时运行,无论何时何地,甚至没有明确原因时,因为CPU运算资源相对便宜。此外,自动化测试还可以在你忙于其他事务时,如硬件升级、软件升级或修复bug时,持续进行。 测试的主要用途在于防止回归错误,即当你修改代码后,确保其他功能不受影响。它还能在硬件或软件升级,以及处理bug报告和修复时提供保障。有了全面的测试,开发者可以毫无畏惧地修改代码,因为如果测试失败,你就清楚地知道哪里出了问题;反之,如果所有测试都通过,那就说明你没有破坏任何功能。 实现自动化测试的关键是将现有的测试过程转化为可执行的代码。例如,在Perl中,我们可以使用Test::More模块来编写简单的测试。Test::More 提供了一套标准的接口和一致的输出,方便使用Test::Harness进行测试。该模块包含了一系列方法,如`ok`用于检查真伪,`is`和`isnt`用于比较相等性,`like`和`unlike`用于正则匹配,以及`is_deeply`用于深度比较复杂数据结构。 TDD 的工作流程通常包括:首先编写一个失败的测试用例,然后编写足够的代码使这个测试通过,最后重构代码以保持简洁和高效。相比之下,传统的手动测试方式依赖于插入打印语句、使用调试器或直接运行代码来发现问题,这种方法效率较低且易出错。 TDD 是一种强大的软件开发实践,它通过自动化测试提高了代码质量、减少了bug,并增强了开发者的信心。通过使用像Test::More这样的工具,开发者可以更轻松地实现TDD,从而在项目的各个阶段都保持代码的健康状态。
剩余45页未读,继续阅读
- RobbyZha2012-07-29不错的资料,值得学校,个人觉得TDD还是适合上层应用软件,底层驱动,嵌入式等,TDD还是很不好入手
- 粉丝: 0
- 资源: 1
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助