Specflow中的表是否与步骤定义或特征文件相关联?

时间:2017-09-08 13:15:19

标签: c# .net automated-tests cucumber specflow

我查看了Specflow和Cucumber的文档,但我无法找到这个问题的明确答案。让我们举个例子,我有一个[Given]步骤,其中包含一个充满输入的表格,如下所示:

Given I login with a <pin> and it is a valid <user role>
| PIN    | User Role |
| 111111 | Admin     |
| 222222 | User      | 

我的主要问题是,如果我在其他功能文件中重复使用此步骤,我是否必须在每次使用时重新复制表格,或者表格是否使用全局访问的步骤定义?

我正在从头开始为我的公司设计Specflow解决方案,我尽可能地坚持DRY。因此,为可重复使用的共享步骤奠定基础是我的首要目标。我可能会把这个问题推翻到我无法看到森林的地方,因为树木,但我喜欢用简单的语言表达这些细节,因为它有助于我学习更好。所以任何帮助都会受到赞赏。

1 个答案:

答案 0 :(得分:1)

如果您在其他要素文件中使用完全相同的步骤,则无需复制。相同的步骤定义在您的要素文件中是全局的,因此也是数据。每个步骤应该完全相同。如果您在步骤中更改了单个字母,则必须生成另一个步骤定义。