如果你有一个功能的场景/测试,你是否必须测试相反的情况?

时间:2011-03-25 03:32:28

标签: testing specflow acceptance-testing

我有一些用Gherkin语法编写的验收测试,并使用SpecFlow自动化它们。场景的一个例子(虽然它不是小黄瓜)是,

“当提交的审核工资增加百分比高于公司门槛时,”薪资增加审批人“需要批准审核。”

正如您所看到的,这是一个特殊情况的示例,导致其他人必须批准审核。在这个例子中,是否需要有一个场景,

“当提交的审核工资增加百分比在公司门槛范围内时,”工资增加审批人“不需要批准审核。”

如果是这样,截止线在哪里。显然,这可能导致每1个场景有2个场景 - 一个与你想要完成的事情有关,另一个只是验证你没有犯错(例如增加批准者最终必须批准)每个评论)

2 个答案:

答案 0 :(得分:1)

测试的程度取决于各种因素,包括您拥有的时间和正确的必要性,因此在决定盲目测试之前应该考虑这一点。

您指定的方案通过代码定义了两条非常明显的路径,并定义了两个不同的结果,因此通常应对它们进行测试。

理想情况下,你会有一套现有的测试套件来测试现有的功能,在这种情况下,它可能是在门槛内加薪而不需要“加薪批准者”,在这种情况下你可以回收这个测试(运行时为回归测试)你只需要测试增加超过阈值。随着您构建回归测试套件,此测试变得更快。

注意:我不熟悉您正在使用的工具,因此无法提供相关示例

答案 1 :(得分:1)

 > .. do you have to test the opposite?

直到有业务需求我会说没有,因为如果员工是经理或儿子,可能还有一个不需要审批者工作流的方案老板。在这种情况下,如果没有任何商业价值,那么简单阈值反对测试就会失败。