如何学习/教Gherkin黄瓜

Tim*_* T. 24 ruby ruby-on-rails cucumber specflow gherkin

我想让业务分析师能够使用Gherkin编写Cucumber友好的功能,场景和步骤的所有规范.

我已经阅读了github网站上的一些关于Cucumber的基本信息以及快速谷歌搜索,但想知道是否有推荐的资源让非技术人员能够使用Gherkin编写全面的BDD(我假设是用于创建黄瓜测试的首选语言.

谢谢.

mrD*_*mrD 29

我所做的,在我们公司的业务分析师是通过给他们的关键词教给他们的结构:鉴于,,然后,对于场景和,作为一个我想要的功能.

然后我给了他们一个简单的例子,并告诉他们写下他们认为应该写的自己的功能.令人惊讶的是,结构是自我解释的,他们写的功能成为一个很好的开始.
唯一的大问题是他们在每个场景步骤中都包含了很多逻辑.我通过反复问"为什么?"解决了这个问题.在大多数情况下,它们显示了他们所追求的核心功能,并且我们重新编写了这些场景.

通过给他们指导并让他们自己编写功能,他们得到了他们的手,并被迫思考他们写的东西.今天他们有了更好的理解和"为什么?" 迭代不再那么常见了.

当然,您需要让业务分析师和开发人员紧密合作,分析师编写的功能应该只是一个开始.请记住,Cucumber功能只是分析师和开发人员之间的通用语言.他们仍然需要经常坐在一起才能彼此说话:)


Rya*_*igg 9

http://cukes.info是教人们如何编写它们的绝佳资源.Ben Mabey还在 2009年Mountain West Ruby Conference 上对Cucumber进行了精彩的演讲.


Jos*_*phL 8

我刚刚第一次使用黄瓜进行了敏捷项目,我认为学习黄瓜和小黄瓜的最好方法就是弄脏你的手.

我可能错了,但我从你的问题中得到的印象是你想要训练你的BAs写Gherkin; 然后他们会编写一些功能并将它们交给开发人员.

这绝对不是要走的路.让BA的开发人员和用户(如果可能的话)共同编写您的场景并随时构建它们会好得多.然后你们一起学习哪些有效,哪些无效.

我们尝试让BA编写完整的功能并将其交给我们.我们(开发者)最终不得不进行重大改写,因为实施最终与广管局最初设想的不同.我们还必须更改步骤的语法,并在整个文件中查找和替换.

一次做一个场景,让它工作,然后继续下一个.迭代方法可以减少浪费的工作量,并确保您都了解应用程序的行为方式.

在如何编写步骤方面,最好从Cucumber附带的步骤开始,并在处理项目时根据特定应用程序进行复制和调整.没有对错,它对你有用.黄瓜网站上的文档通常很好,并且在您了解更多信息后将成为宝贵的资源.