【发布时间】:2018-06-15 10:58:13
【问题描述】:
是否可以在小黄瓜中编写一个场景大纲,其中包含在所有示例中都不需要的断言步骤?
该场景将有两个断言步骤来测试可以切换的表。
- 检查是否显示了数据表。
- 如果是,则检查值是否正确。
对于#2,当表被关闭时,第二步就不需要运行了,所以我想知道我是否可以使用数据表并将值留空
下面的例子:
Scenario Outline: Toggle graph and test data
Given I have "<Data>" data set
When I toggle the grid "<toggle>"
Then the grid is "<display>"
And all grid cells contain "<gridValues>"
Examples:
| Data | toggle | display | gridValues |
| 240 | On | displayed | 240 |
| 240 | Off | hidden | |
| null data | On | displayed | - |
| null data | Off | hidden | |
“gridValues”只会在其中两种情况下使用。
有没有更好的写法?
【问题讨论】:
-
那你应该再写一个
Scenario。在这种情况下使用的常用短语是don't code your feature file。 (在理想世界中)这些句子是在选择任何代码设计决策之前编写的。在这个阶段,甚至可能还没有决定是否会有一个切换。 (这在很大程度上取决于应该实现的目标) -
符合@SubOptimal;写不同的场景。如果切换开关打开或关闭,您的期望会有所不同;你可以测试这两个。 (如果开关打开,则应显示并验证数据;如果关闭,则不应显示)