Gherkin特性文件的漂亮输出

23
我们正在使用Gherkin编写规范,希望将功能文件展示给业务利益相关者。如何以某种“漂亮”的格式导出所有功能文件?
例如:
  • 生成包含所有功能的文档
  • 或将功能集成到其他文档中
  • 或在Web门户上发布特性文件(格式良好)

请问您最终选择了哪一个,并且您是如何在公司内部进行主机托管的? - vikramvi
在做出决定之前,我已经离开了这个项目和公司。 - dgmstuart
你尝试在新项目和公司中使用过这个吗?你的意见将对社区和我本人都有很大帮助 :) - vikramvi
不,自那时以来我根本没有使用过Gherkin/Cucumber。 - dgmstuart
5个回答

12

到目前为止,我见过的最好的文档工具是Pickles;http://github.com/picklesdoc/pickles

虽然还在不断完善中,但已经非常优秀了。请在GitHub上提供您的反馈。


我现在已经离开了这个项目,但这是看起来最有前途的一个——我们实际上已经开始使用它了,但我不知道团队在使用它方面取得了多少进展。 - dgmstuart
2
@dgmstuart 它还活着,而且越来越强大!他们刚刚添加了JSON和DITA支持,并支持从命令行、PowerShell(例如在VS2010中)、MsBuild和NAant运行。快去看看吧:http://nuget.org/packages/Pickles - Marcus Hammarberg
7
很遗憾,这似乎只适用于Windows机器...没有Mac或Linux支持 :( - Nosrettap
我刚刚构建了GherkinDoc,这是一个npm包,可以从Gherkin特性生成HTML网站,https://www.npmjs.com/package/gherkindoc - AlexandrosD

3
我们团队目前正在使用relish,这是一个将您的gherkins格式化为网站的代码项目。
然而,它也有一些缺点——只有“在测试版中免费”,但这可能仍然会给您一些想法。
Relish的一个好处是,当开发人员准备好时,他们可以选择推送gherkins,并且利益相关者无需管理/接收新电子邮件/文档等——他们只需要刷新项目网页即可。

1
嗨 - 谢谢,是的,我现在已经看到了Relish,但不幸的是,业务方面不舒服让所有人都能看到规格说明书 - 这是一个巨大的缺点。我们看了一下Pickle,它并不是很成熟,但看起来很有趣。我已经离开了这个与问题相关的公司... - dgmstuart
据我所知,“所有人都能看到”并不准确。您确实需要将功能文件上传到Relish网站 - 因此涉及第三方,但仅您自己的登录才能查看您的Relish页面。 - perfectionist
啊,看起来自从我上次查看以来,他们已经添加了私有项目。 - dgmstuart

2

你为什么想要这样做?

我建议使用BDD的美妙之处在于它提供了业务利益相关者、测试人员和开发人员之间的通用语言。它可以在测试周期的任何部分使用,描述您想要的功能及其所遵循的场景。通过使用Gherkin风格的功能文件作为简单的文本文件,业务利益相关者可以直接编辑它,并将其传输回源代码存储库。您可以从业务中获取新的场景,确认需要工作的功能,然后再编写一行代码。

通过提供这些文件的不同格式,您会干扰数据跨越这些桥梁的便捷性。是的,您可以美化它,并将所有特性分组成一个Word文档等,但这样做会失去直接从业务中获取一组场景并证明代码库“适用于它们”的能力。

因此,我建议向业务利益相关者呈现的最佳格式与它们已经存在的格式完全相同。

但是,您是否考虑更改测试运行器?即使特性仍然是纯文本,像concordionConcordion.net这样的运行器将为您提供非常漂亮的测试运行显示。


5
你好。是的,我同意,我宁愿不要搞乱格式,但需要解决的主要问题是向用户呈现规范——他们不太精通技术,所以我几乎无法让他们将更新拉入本地仓库!存在一些非常基本的挑战:从源控制共享、以可视化可读的方式呈现规范(例如使用语法高亮),以及仅向高层利益相关者呈现功能描述列表。你有任何想法吗? - dgmstuart
你考虑过实现一个接口吗?有人(首席开发人员/团队领导/技术娴熟的项目经理)与用户进行联络。他们通过电子邮件提交给接口,然后接口处理实际提交。是的,这不是理想的,但它可以让一切顺畅进行,而且谁知道,一旦他们习惯了这个想法,他们也会直接提交。 - AlSki
7
我继承了一个包含450个故事,总字数超过46,000字的系统——而且这个数字还在增长。仅从原始故事文本文件中理解功能就像是试图通过阅读成千上万行代码来理解系统架构一样困难。如果这些故事要用作文档,就需要有一种机制可以轻松地缩放到想要查看的级别。 - Chris Snow

1

另一个选项完全不需要技术技能。与其他答案类似,但是专门设计以吸引业务利益相关者。这是一个Chrome扩展程序,可以自动格式化在Chrome中打开的任何*.feature文件。在此处查看示例并进行安装:漂亮的Gherkin特性文件查看器


0

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接