BDD是一种很棒的软件开发方法论,我们都知道。但我们普遍看到的是,把BDD误解为Cucumberany其他测试自动化工具,将Gherkin带入项目中。
话说回来,在一个团队中,有一个QA,他自动化后端和前端测试,而其他成员(开发、PO、BA)完全不用bdd的情况下,使用这样的工具带来的真正好处是什么?
我一直想继续使用它,但有好几次,它似乎给维护带来了更多的工作,因为对于包含gherkin语言的特性文件来说,有一个额外的层是必要的。
文化优先的概念说,如果一个人想实现其(组织)目标,他应该从人开始,然后转移到流程,最后采用正确的工具。
我在公司里大多是要求使用基于Cucumber的测试线束,但这都是一个 货运教派. 换句话说--黄瓜框架是测试自动化的一个负担,没有服务于行为驱动的开发流程。维护最上面的两层(Gherkin和stepglue)对团队的经济价值为零(甚至是负值)。
我们确实尝试让sapient测试人员(我不同意 "Manual QA "这个词)参与到Scenario的早期创建中来,但没有成功,因为他们使用的是imperative Gherkin。用Cucumber测试中的自动化,依靠的是声明式语言。
针对完整的答案--一个人并不真的需要一个单独的步骤和。DSL 层,如在 "最佳 "做法.
你可以简单地利用Step函数方法作为DSL,并在其他地方引用调用它们。
Cucumber是一个支持行为驱动开发(BDD)的工具。如果你对行为驱动开发很陌生,请先阅读我们的BDD介绍。
Cucumber读取用不可否认的文本内容写成的可执行规范,并验证软件程序是否按照这些规范的要求去做。这些规范由多个例子或场景组成。
你可以参考这个文档来了解更多关于Cucumber的BDD。开始使用黄瓜
Cucumber BDD与其他工具相比的优势。
你也可以参考一下。12-awesom-bendd的好处:
我使用它是因为我的手动测试人员团队可以很容易地用它编写测试用例。我们开发了一个测试词汇,他们使用这些短语来编写自己的测试用例让我执行。