本文已使用 Google Cloud Translation API 自动翻译。
某些文档最好以原文阅读。
测试驱动开发或 TDD 是一种软件开发方法,其中测试先于代码编写。 TDD 的目的是在开发过程的早期发现软件错误,在它们有机会变得更加困难和昂贵之前修复。
TDD过程可以分为三个步骤:
编写测试:这是TDD的第一步。为要实现的功能编写测试。测试应该以运行时会失败的方式编写。这是因为该功能尚未实现。
Write code to make the test pass:在这一步中,编写代码使测试通过。功能应该以尽可能简单的方式实现。
重构代码:一旦代码通过测试,就可以重构它来改进它的设计。这可能包括使代码更高效、更易于阅读或更健壮。
使用 TDD 有很多好处,包括:
提高代码质量:TDD 可以带来设计更好、更易测试的代码。
减少错误数量:及早发现错误,TDD 可以帮助减少系统中的错误数量。
改进的可维护性:使用 TDD 编写的代码通常比不使用 TDD 的代码更容易维护。
改善团队沟通:TDD 可以通过强制团队成员在编写任何代码之前讨论需求来帮助改善团队成员之间的沟通。
使用 TDD 也有一些缺点,包括:
较慢的开发过程:TDD 有时会减慢开发过程,因为测试必须在代码之前编写。
需要更多纪律:TDD 需要开发人员遵守很多纪律。如果测试没有正确编写,它们将不会有效。
Not suitable for all projects:TDD 可能不适合所有项目。例如,如果一个项目对时间很敏感,那么 TDD 可能不是最佳选择。
如果您有兴趣了解有关 TDD 的更多信息,可以在线获得许多资源。这里有一些:
The Coding Dojo Handbook:这本书是学习 TDD 的重要资源。它涵盖了 TDD 的基础知识并包含许多示例。
通过示例进行测试驱动开发:这本书是学习 TDD 的另一个重要资源。它采用更实用的方法并包含许多代码示例。
Agile Software Development, Principles, Patterns, and Practices:本书是软件开发领域的经典之作。它包括一个关于 TDD 的部分,是了解更多关于该主题的重要资源。