使用红宝石/黄瓜,我知道您可以明确地调用fail("message")
,但您还有其他选择吗?我可以在黄瓜场景中强制使用什么结果
我问的原因是我们有0 ...我重复,绝对没有控制我们的测试数据。我们进行了黄瓜测试,测试我们的数据库中可能有或没有用户的边缘案例。我们(出于显而易见的原因)不想扔掉测试,因为它们很有价值;但是由于我们的数据集无法测试该边界情况,因为sql语句返回一个空的数据集,所以失败。现在,我们只是让这些测试失败,但是我希望看到“no_data”或类似的东西,如果sql语句返回一个空的数据集。所以输出会是什么样子
Scenarios: 100 total (80 passed, 5 no_data, 15 fail)
我愿意使用已实行“跳过”如果有skip("message")
功能。
我的选择是什么,所以我们可以看到,使用当前数据,我们没有任何测试数据用于这些测试?使这些手动测试也不是一种选择。他们需要在我们的自动化过程中每周运行一次,但不知何故与故障分开。失败意味着缺陷,发现no_data意味着它不是一个可测试的条件。这是警告之间的区别:我们还没有测试过这个边缘案例,警报:破解代码。
我也在黄瓜gem中自己修改了summary.rb和html.rb文件,所以当我们在测试套件结束时输出结果时,“待定”测试实际上显示“no_data”而不是挂起。这使P.O.更容易。读书。 –