行为驱动开发(BDD)是指从TDD(测试驱动开发)方法派生而来的敏捷软件开发过程。 BDD被认为是说明系统行为的测试。它鼓励开发中涉及的每个人使用简单语言的对话和具体示例,以使系统行为更清晰。在此开发中,技术定义了多种基于系统行为来开发功能的方法,并且这些技术是结合了测试驱动开发(TDD)和域驱动开发(DDD)的。
行为驱动开发是自动化测试中的一种很好的方法,因为它更着重于系统的行为而不是代码的实现。通过自然语言促进BDD来表达系统的行为和系统的预期结果。在BDD中,所有参与方都像客户,开发人员,测试人员,利益相关方一样参与协作对话并说明系统行为。
敏捷开发中的行为驱动开发:
- 客户和服务提供商就他们的需求进行了交谈。
- 客户/客户,开发人员和测试人员共同阐述了需求。
- 然后在结构化方案中定义需求。
- 有助于开发并充当自动化测试,
- 测试人员将这些场景用作测试的基础。
BDD生命周期:
- 描述行为–
这包括产品流程和功能的主要构想。 - 定义需求–
通过业务规则对需求进行建模,以获得共同的理解。 - 运行并通过测试–
开发并运行测试用例。 - 应用代码更新–
根据要求对其进行重构。 - 运行并通过测试–
运行更新的代码并通过测试用例。
但是重要的一点是,BDD并不是要像TDD那样进行测试。 BDD就是要实现业务目标和要求。
使SDLC更简单:
SDLC(软件开发生命周期)被视为任何软件开发的框架或规范。 BDD在简化SDLC流程方面做出了巨大贡献。
- 用标准英语定义需求/系统的行为可以使SRS(软件需求规范)更加容易和清晰。
- 在客户,开发人员和测试人员之间加强协作。
- 它对测试和部署阶段具有很大的积极影响。
行为驱动开发的好处:
- 更加明确业务目标和客户要求。
- 由于使用非技术语言,因此可以吸引更大的客户群。
- 帮助在开发之前定义验收标准。
- 从客户和开发人员的角度关注系统的行为。
- 帮助避免不必要的功能,并包括重要功能。
- 减少了修改后和部署后缺陷的工作量。
- 避免在开发过程中产生误解。