Pros and Cons of Test Driven Development

TDD 开发模式其实就是先准备好测试脚本, 然后根据脚本驱动编码. 在这种情况下,只要能通过所有的测试即能代表模块编码任务完成.

几个要点:

  • TDD 并不完全等于单元测试的概念,

优势

  1. 由于测试脚本一般都是模块化的, TDD 开发模式会让编码模式偏向模块化
    • 可以让开发人员更容易理解系统的模块设计
    • 测试脚本也很适合新人进行学习
  2. 使得代码更容易管理与重构, 代码质量变得更高
  3. 令协作更高效也更简单, 因为每一次写作的编辑之后,要运行一次测试脚本,保证代码质量
  4. 可以立刻发现一些比较低端的错误. 比如一些完全是浪费时间的错误(拼写错误,大小写问题等等)

劣势

  1. 需要额外维护一份测试代码
  2. 测试的内容可能是富含不确定性的(比如取决于用户的随机输入等等)
  3. 需要花一段时间编写测试脚本代码, 这样一来,就会影响整个项目的进度
  4. 想写一份非常好的测试脚本难度也不小, 并且近年来比较少有关于讨论测试的标准的文章
  5. 如果一个项目已经进行一半,很难中途突然开始引用 TDD 模式

参考文献

https://www.testingexcellence.com/pros-cons-test-driven-development/

  • 文章标题: 《TDD 开发模式的优势与劣势》
  • 发布日期: 2015-11-11
  • 文章分类: Dev
  • 相关标签: