我在测试驱动开发中不理解此声明,“测试代码既需要维护,也需要生产代码”

时间:2019-03-26 20:40:09

标签: tdd

Joosep Simm的以下声明的含义是什么

  

测试代码既需要维护,也需要生产代码。...   测试代码与生产代码线性增长。所有代码行都需要维护,这意味着成本。更改现有功能时,最容易确认成本。必须修改测试以及生产代码。当多个测试执行同一行生产代码时,这将成为一个问题。当高级测试太多时,通常会发生这种情况。最高级别的测试是端到端测试,该测试从调用GUI开始,一直到数据存储级别。但这不仅是可能导致问题的最高级别的测试。

1 个答案:

答案 0 :(得分:0)

  

测试代码和生产代码都需要维护

人们可能假设他们从不在编写代码后就不必阅读/适应/ 改进测试代码,除非相应的产品代码更改或基础功能需要增强。

该引用试图给出解释该假设的理由“我们不必改进我们的测试代码(与生产代码无关)!”是错误的。

重点是:对测试代码有非常特定的要求。它应该可以帮助您:

  • 真正测试您的生产代码
  • 快速识别错误

换句话说:至关重要的是,您的测试代码还易于阅读和维护。

这意味着 开发完成并测试功能后,值得改善测试代码。为了确保阅读将来的意大利面条/传统代码不会变得困难!