码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • BDD - BDD with Agile 敏捷 BDD


    BDD - BDD with Agile 敏捷 BDD

    • 引言
    • Agile 敏捷开发
      • Agile 概括
      • Agile 原则
      • BDD 和 Agile 的关系
    • BDD 和 Acceptance Tests 验收测试
    • Shift Left 左移
    • BDD 适合所有人
      • The Three Amigos 三个好朋友
    • 不同 Sprint 下 Story 的发展进程
      • 传统 Sprint 周期
      • behavior-driven 行为驱动 Sprint 周期
      • 进一步 Shift Left 左移 的 Srpint 周期

    引言

    有关 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 写验收标准。

  • 相关阅读:
    java计算机毕业设计晨光文具店进销存系统设计与开发源码+系统+lw文档+mysql数据库+部署
    Android init.rc启动shell脚本
    使用OpenCV3处理图像
    Java中stream流中peek的用法和foreach用法区别和联系实例?
    【我的电赛日记(完结)---2021全国大学生电子设计竞赛全国一等奖】A题:信号失真度测量装置
    SpringData MongoDB学习总结
    SpringBoot+Dubbo+Nacos 开发实战教程
    SQL基础练习题1
    如何做校园圈子小程序,需要哪些功能?APP小程序H5公众号功能齐全,PHP书写,uniAPP。源码交付,支持二开!
    机器学习策略篇:详解为什么是ML策略?(Why ML Strategy?)
  • 原文地址:https://blog.csdn.net/wumingxiaoyao/article/details/126332233
  • 最新文章
  • 攻防演习之三天拿下官网站群
    数据安全治理学习——前期安全规划和安全管理体系建设
    企业安全 | 企业内一次钓鱼演练准备过程
    内网渗透测试 | Kerberos协议及其部分攻击手法
    0day的产生 | 不懂代码的"代码审计"
    安装scrcpy-client模块av模块异常,环境问题解决方案
    leetcode hot100【LeetCode 279. 完全平方数】java实现
    OpenWrt下安装Mosquitto
    AnatoMask论文汇总
    【AI日记】24.11.01 LangChain、openai api和github copilot
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1
正则表达式工具 cron表达式工具 密码生成工具

京公网安备 11010502049817号