关于tdd:TDDBDDATDD都是什么有什么区别上
软件开发是一个迭代过程,包含编写、测试和改良代码,直到满足需要。测试驱动开发(TDD)、行为驱动开发(BDD)和验收测试驱动开发(ATDD)是反对该过程的三种办法。TDD、BDD和ATDD都是软件开发中用于测试和确保品质的办法。尽管它们都以进步软件开发品质为指标,但它们的办法和关注点有所不同。本文将探讨TDD、BDD和ATDD的概念以及它们之间的区别。 测试驱动开发(TDD)测试驱动开发(TDD)是一种软件开发办法,侧重于在编写代码之前编写测试。这是一个迭代过程,包含编写测试,运行测试,而后编写通过测试的代码。TDD的指标是编写高质量、可保护的代码,这些代码能够做到既满足需要,又没有Bug。 TDD有以下三个阶段: 红:编写一个失败的测试 绿:编写代码以使测试通过 重构:重构代码以进步其品质 TDD通常用于麻利软件开发方法论中,强调在放弃高质量的同时疾速交付软件。TDD对于小的增量更改特地有用,它激励开发人员在编写代码之前思考代码的设计。 测试驱动开发(TDD)是一种软件开发过程,强调在编写理论代码之前编写自动化测试。TDD过程包含三个阶段:红色、绿色和重构。 在红色阶段,开发人员编写一个失败的测试,指定要实现的性能。在绿色阶段,开发人员编写最大量的代码以使测试通过。在重构阶段,开发员进步代码的品质并打消任何反复。 行为驱动开发(BDD)TDD确保代码是可测试的,并且编写的测试满足需要。TDD有助于在开发周期的晚期辨认缺点,缩小修复缺点的老本并进步代码品质。TDD还激励开发人员编写简略、模块化和可保护的代码。 行为驱动开发(BDD)是TDD的扩大,它关注零碎的行为,而不是实现细节。BDD基于这样一种思维,即零碎的行为应该以技术和非技术利益相关者都容易了解的形式进行形容。 在BDD中,测试是用形容零碎行为的更天然的语言编写的。这些测试被称为“场景”,通常以“Given When Then”语句的模式编写。BDD激励开发人员、测试人员和业务利益相关者之间的合作,以确保每个人都对系统的行为有独特的了解。 BDD有以下三个阶段: 1.发现:辨认形容零碎行为的场景。 2.公式化:用每个人都容易了解的自然语言写出场景。 3.自动化:应用测试框架自动化场景。 BDD常常用于麻利软件开发方法论,其中强调团队成员之间的合作和沟通。BDD激励开发人员和测试人员从用户的角度思考零碎的行为,而不仅仅是技术细节。 行为驱动开发(BDD)是TDD的一个扩大,专一于软件的行为。BDD应用畛域特定语言(DSL)以人类可读的格局形容所需的行为。BDD强调开发人员、测试人员和利益相关者之间的合作,以确保软件满足业务需要。 在BDD中,行为是依据场景来形容的,场景形容了用户和零碎之间的交互。每个场景都由一组Given When Then步骤组成。Given步骤指定初始条件,When步骤指定操作,而后步骤指定预期后果。 BDD确保软件满足业务需要,并以预期的行为交付。BDD改善了利益相关者之间的沟通,缩小了误会,并确保软件具备所需的性能。 验收测试驱动开发(ATDD)验收测试驱动开发(ATDD)是一种专一于确保满足零碎需要的软件开发办法。ATDD基于这样一种思维,即应该在编写代码之前定义个性的承受规范。这样能够确保该性能符合要求并通过彻底测试。它扩大了TDD和BDD的原理,以关注零碎的验收规范。 验收测试驱动开发(ATDD)是一个在编写理论代码之前指定验收规范的过程。ATDD相似于BDD,但侧重于承受规范而非行为。ATDD波及开发人员、测试人员和利益相关者之间的合作,以确保软件合乎验收规范。 在ATDD中,验收规范是依据验收测试来定义的,验收测试形容了零碎的预期行为。验收测试以商业可读的格局编写,用于验证零碎是否合乎验收规范。 ATDD确保软件合乎验收规范并提供预期性能。ATDD改良了利益相关者之间的沟通,缩小了误会,并确保软件满足业务需要。 在ATDD中,测试是在开发人员、测试人员和业务利益相关者之间合作编写的。测试是以从用户的角度形容零碎行为的形式编写的。这些测试被称为“验收测试”,通常以“Given When Then”语句的模式编写。 ATDD有以下三个阶段: 1.标准:定义个性的验收规范。 2.自动化:应用测试框架自动化验收测试。 3.验证:验证个性是否合乎验收规范。 ATDD常常用于麻利软件开发方法论,其中重点是交付满足业务需要的软件。ATDD激励团队成员之间的单干,以确保每个人都对需要有独特的了解,并且该性能合乎验收规范。