gpt4 book ai didi

unit-testing - 保持通过单元测试有什么意义?

转载 作者:行者123 更新时间:2023-12-03 01:57:10 25 4
gpt4 key购买 nike

假设我正在开发一种方法,可以传入两个数字并返回最大的数字。由于我采用的是 TDD 风格,因此我将进行十几个单元测试并提出以下实现:

public int GetHighestNumber(int x, int y)
{
if (x > y) return x;
else return y;
}

这非常有效。

测试已用于创建实现。当实现完成后,保留这些单元测试有什么意义呢?这就像房子交付后保留房子周围的脚手架一样。

我并不是在寻找进行单元测试的原因,或者是否/何时使用 TDD。我只是好奇为什么应该在代码完全实现后保留单元测试,而不是将这些测试作为临时手段并在不需要支持开发人员时将其删除。

<小时/>

编辑

在对 CodeGnome 进行评论后,我意识到我应该强调这只是 TDD 测试,创建这些测试主要是为了为开发人员指明正确的方向。可以说是脚手架。

尽管如此,我还是很感谢所有的评论。

<小时/>

读完所有消息后,我可以得出两件事:

  1. stackoverflow 上没有人真正阅读原始问题
  2. 您应该保留这些单元测试,不是因为测试本身有任何用处,而是因为您可能与非常无能的同事一起工作,而这些测试的目的是防止他们做出极其愚蠢的事情

最佳答案

现实生活中的代码几乎永远不会“完成”。

需求发生变化和扩展。添加了功能。尽管 TDD,仍有一些错误需要修复。

单元测试也可以用作回归测试,以证明代码在这些更改之后仍然有效。这实际上是单元测试最有值(value)的方面(任何声称设计优势不那么重要的 TDD 支持者都是在自欺欺人)。

关于unit-testing - 保持通过单元测试有什么意义?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11792564/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com