BDD - BDD with Agile 敏捷 BDD

引言

有关 BDD 概念,请参考 BDD - 介绍 Behavior-Driven Development 行为驱动开发,本文主要结合 Agile,发挥 BDD 在整个团队的作用。

Agile 敏捷开发

Agile 概括

Agile 敏捷开发是一个增量的,迭代的,协作的软件开发过程。Team 团队计划一个 Sprint 周期的 User Stories 用户故事,这些 Story 都有验收标准,团队围绕 Story 的工作(开发,测试,自动化)都必须完成。

Agile 原则

来自 the Agile Manifesto 敏捷开发宣言

Individuals and interactions over processes and tools
Working software over comprehensive documentation
Customer collaboration over contract negotiation
Responding to change over following a plan

个体和交互胜过过程和工具
可运行的软件胜过详尽的文档
客户参与协作胜过合同谈判
响应变化胜过遵循计划

BDD 和 Agile 的关系

BDD 通过协作和简化流程来提高质量。有助于规范验收测试。

  • 补充 Agile
  • 是 Agile 的一个改进
  • 不是 Agile 的翻修和改造
  • 由 QA 驱动

BDD 和 Acceptance Tests 验收测试

Acceptance Criteria 验收标准是一系列用来接收和检验 Story 完成必须满足的条件。Acceptance Tests 验收测试是覆盖验收标准的场景测试。

例如: 一个行为驱动的用户故事 A Behavior-Driven User Story

User Story
As a Baidu user
I want to search for some terms
So that I can get info for my search

Acceptance Criteria
Given a user is on Baidu home page
When the user searches for “BDD”
Then the results page shows document links for “BDD”

我们可以得出:
Requirements 需求 = Acceptance Criteria 验收标准 = Tests 测试!

BDD 帮助团队方便将验收测试转换成自动化测试。Acceptance criteria 验收标准往往被忽略,它可能缺失或漏写,导致团队误解,从而引发浪费时间,Story 的不完整,无效的 features. Gherkin 语言规范化验收标准来提高沟通,规范化也使得测试方便被自动化。

Shift Left 左移

Shift Left 左移是在软件开发生命周期尽早开展测试和 QA 工作。尽早发现问题意味着后面花更低的成本.
BDD 就是左移,因为验收标准可以在一个 Spring 早期用 Gherkin 编写,开发在实现功能的同时,QA 可以准备测试。

BDD 适合所有人

因为 BDD Scenario 场景是用直白的语言写的,所以每个人都能理解。
对 PO (product owners) 来说,它们是需求
对开发来说,它们是验收标准
对自动化工程师来说,它们是脚本
对其它 stakeholders 利益相关人员,它们是描述,说明规格

The Three Amigos 三个好朋友

Agile 的三个主要角色,PO(Product Owner), Developer 开发, 和 Tester 测试,他们是三个好朋友。
他们定期开会:

  • 讨论 Story 和 验收标准
  • 澄清任何不确定性
  • 将验收标准翻译成 Gherkin 示例(QA-Lead)

这三个好朋友的目的就是为了让所有人都达成一致 on the same page !

不同 Sprint 下 Story 的发展进程

传统 Sprint 周期

在这里插入图片描述
在一个传统 Sprint 周期,Story 的各阶段进程是顺序的。测试行为通常是在 Sprint 的后期进行,如果有问题,将造成 Story 不能完成的风险。

behavior-driven 行为驱动 Sprint 周期

在这里插入图片描述
在一个行为驱动 Sprint 周期,三个好朋友在开始时就会面,QA 可以领先将验收标准翻译成 Gherkin Scenario,然后自动化跟开发并行执行。

进一步 Shift Left 左移 的 Srpint 周期

在这里插入图片描述
理想情况下,当一个团队非常擅长 BDD,在提交 Story 到一个 Sprint 之前,将验收标准 Gherkin 化在梳理 Grooming Story 时期进行。PO 也可以帮助 QA 开始用粗略的 Gherkin 写验收标准。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值