← 返回所有文章
行为驱动开发:让所有人都能读懂的测试
行为驱动开发:让所有人都能读懂的测试
行为驱动开发(BDD)是一种软件开发实践,鼓励开发人员、QA工程师和非技术干系人在编写任何代码之前,共同定义软件应该如何运行。
Given-When-Then格式
BDD的通用语言是Given-When-Then格式(有时称为Gherkin语法):Given(初始上下文)、When(触发动作)、Then(预期结果)。这种格式同时是规范说明、测试用例,以及——连接到自动化框架后——可执行的测试。
将验收标准与自动化测试关联
在Scrum中,用户故事的验收标准转化为可测试的Given-When-Then场景。这些场景构成「活文档」:与代码一同维护,随每次构建执行,当变更破坏预期行为时明显失败。
BDD工具
Cucumber:最广泛使用的BDD框架,支持Java、Ruby、JavaScript和Python。
Behave:Python原生BDD框架,遵循与Cucumber相同的Gherkin约定。
SpecFlow:.NET生态系统的Cucumber等效工具,与Visual Studio紧密集成。
BDD何时成功,何时变成负担
当整个团队——包括产品负责人——都参与编写场景时,BDD效果最佳。当它被视为QA的职责而非团队实践时,就会变成维护负担。关键因素是协作——而不仅仅是语法。
XNM Consulting帮助组织构建将业务意图与可工作软件连接起来的敏捷交付能力。了解更多,请访问我们的「项目与计划交付」页面。