2011-11-08 35 views
20

我们正在Gherkin中建立一个规范,并且我们希望向业务涉众展示这些特征文件。我们怎样才能以某种'漂亮'的格式导出我们所有的功能文件?很好的小黄瓜特征文件的输出

例如:

  • 生成一个文件包含所有功能
  • 或集成功能集成到其他文档
  • 或发布在门户网站(很好地格式化)
+0

你能否请澄清你最终选择哪一个,以及你如何在公司内主办? – vikramvi

+0

在作出决定之前,我离开了项目和公司。 – dgmstuart

+0

你在新项目和公司中试过这个吗?您的投入将对我和社区有很大的帮助:) – vikramvi

回答

11

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

它在工作中,但看起来不错。请在GitHub上提供您的反馈意见

+0

我现在已经离开了这个项目,但是这个项目看起来最有前途 - 我们实际上已经开始使用它了,但我不知道团队有多远。 – dgmstuart

+2

@dgmstuart它活着,踢!他们只是添加了JSON和DITA支持,并支持从命令行,powershell(例如VS2010),MsBuild和NAant运行它。检查出来:http://nuget.org/packages/Pickles –

+1

似乎该项目已转移到https://github.com/picklesdoc/pickles –

2

您为什么想要这样做?

我认为bdd的美妙之处在于它提供了业务涉众,测试人员和开发人员之间无处不在的语言。它可以用在测试周期的任何部分来描述你想要的功能和他们遵守的场景。将你的小黄瓜风格的功能文件作为一个简单的文本文件,它可以由商业利益相关者直接编辑,并直接转换回源代码存储库。在编写一行代码之前,您可以从业务中真正采用新的方案并确认哪些功能需要工作。

通过为这些文件提供不同的格式,您正在干扰数据可以轻松跨越这些网桥。是的,您可以对其进行美化并将所有功能组合在一起,形成一个文档文档等,但这样做会使您无法直接从业务中直接获取一组场景,并且显示代码库对他们“起作用”。

所以,我建议呈现给用户的企业利益相关者的最佳格式是完全一样的,因为他们已经在格式。

但是,你有没有考虑更改你的测试亚军。即使这些功能仍以纯文本形式显示,跑步者(如concordionConcordion.net)会为您提供非常漂亮的测试运行显示。

+5

嗨,是的,我同意,我宁可不要惹格式,但要解决的主要问题是向用户展示这些规范 - 他们根本不是很懂技术的人,所以我几乎不能让他们将更新引入本地存储库!很多真正基本的挑战:从源代码控制共享,以视觉可读的方式呈现规范(例如语法突出显示),以及仅为高级别利益相关者呈现特性描述列表从这个角度出发的任何想法? – dgmstuart

+0

有y你考虑实现一个接口?有人(主要开发人员/团队负责人/技术精明的项目经理)与用户保持联络。他们通过电子邮件提交到接口,然后处理实际的提交。是的,它并不理想,但它让所有事情都变得动人,而且谁知道,一旦他们习惯了这个想法,他们也会直接承诺。 – AlSki

+6

我继承了450个故事,总计超过46,000字的系统 - 并不断增长。试图理解原始故事文本文件的功能就像试图通过读取数千行代码来理解系统架构。如果故事要作为文档,需要有一种机制来轻松放大或缩小到您想要查看的级别。 –

3

我们的团队目前使用relish,这是一个代码项目,可以很好地将您的黄瓜格式化到网站上。

但它有一些缺点 - 它只是“在beta版中免费”,但这仍然可以给你一些想法。

津津乐道的一个很好的功能是你的开发团队可以选择的黄瓜时,他们都准备好了,利益相关者不需要管理/接收新的电子邮件/文件等等 - 他们可以刷新项目网页。

+1

嗨,谢谢,是的,我现在已经看到了Relish,但不幸的是,这项业务让所有人都看不到 - 这是一个巨大的缺点。 我们看了一下Pickle,它不是很成熟,但看起来很有趣。我已经离开了这个问题相关的公司...... – dgmstuart

+0

AFAIK“all to see”并不准确。您需要将功能文件上传到津津乐道的网站 - 所以有第三方参与,但您的津津有味页面只能在您自己的登录页面中看到。 – perfectionist

+0

啊,自从我上次查看它们似乎已添加了私人项目。 – dgmstuart

1

另一个不需要任何技术技能的选项。与此处的另一个答案类似,但专门用于吸引业务而不是技术利益相关者。这是一款Chrome扩展程序,可自动格式化在Chrome中打开的任何* .feature文件。看到的例子和安装在这里:Pretty Gherkin feature file viewer