我们有一个使用Cucumber的应用程序,其中有许多使用Scenario Outlines的小黄瓜 . 我们使用ruby来运行测试 .
我想用cucumber-reporting显示这些测试的结果 . 但是,目前黄瓜如何报告Scenario Outlines的JSON(等)结果存在问题,这意味着输出不包含正确的结果,并且报告无法显示这些结果 . 见this issue和this issue .
在处理场景大纲时,我可以向Cucumber提出正确的JSON报告吗?或者,是否有一种自动方式将场景大纲处理为正常场景,以便Cucumber生成适当的报告?
下面我有一个蛮力的答案,但我会欣赏一些不那么愚蠢的东西 .
1 回答
注意:我真的不喜欢这个答案 .
场景轮廓可以使用
cucumber -f pretty -x -d
进行预处理,这会在干运行中扩展场景轮廓,其中步骤不会实际执行 . 输出可以通过管道传输到文件,并且可以使用某些脚本来切断该文件以提取生成的方案 .然后,这些场景可以包含在实际黄瓜执行的输入中,这将执行场景大纲,就像它们是正常的场景一样 .
这真的很糟糕,需要编写一个脚本来删除
-f pretty -x
输出的结果(包括删除每一行的自动注释和每个轮廓的实际生成Examples:
的前导码) .Update:
有人写了一个格式化程序,基本上这样做,但他们警告说这是一个黑客:https://gist.github.com/blt04/9866357