这样我们就通过了所有的测试

Description of your first forum.
Post Reply
sujonkumar6300
Posts: 316
Joined: Thu Jan 16, 2025 8:32 am

这样我们就通过了所有的测试

Post by sujonkumar6300 »

所以我们的代码已经准备好了。

[编者注:本示例的代码可在 github 上找到,网址为r 3如果您检查它的修订历史,您将看到我们在此处遵循的相同步骤。]

显然,由于篇幅限制,我对该过程进行了一些总结,但我认为该过程很清晰。正如您所见,我们从来没有一次编写大量代码。这就是全部内容!这与前面描述的学习过程非常相似,当时我们在解释器中以交互方式测试我们的代码。不断的反馈激励我们满怀信心和决心继续前行,因为我们知道我们的系统始终在正常运转。即使我们不小心引入了错误,我们也可以通过按几个 Ctrl-Z 来解决它。这是很有价值的。

依靠从示例或其他系统中提取的代码来解决编程问题是很常见的。这里调整一下,那里 萨尔瓦多 WhatsApp 号码列表 调整一下,直到明显起作用。问题是我们不确定我们做了什么。如果代码随后失败,我们就不太清楚原因了。通过以规范的方式遵循 TDD,我们可以了解我们所做的事情是否有效,以及原因。

编写有效的单元测试
Roy Osherove 在他的《单元测试的艺术》[1] 一书中说,好的测试有三个共同的特性:可读、可靠、可维护。我要添加的第四个属性是“速度”。下面我解释这些属性。

易读性
易读的测试能够清楚地揭示其目的或存在的原因;基本上,测试是为了证明什么。其中最重要的部分就是赋予它一个合适的名字。例如,如果您正在测试堆栈,那么我们不要将我们的测试称为 testStack_01、testStack_02 等;这样的名字是没用的。我们应该选择能够反映代码应展现的可观察的有用行为的名称。例如,testSavedElementsAreReturnedInReverseOrder 这个名称描述了堆栈的可观察行为:放在最前面的元素是最后返回的。
Post Reply