Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/.net/20.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# Specflow中的表是否与步骤定义或要素文件关联?_C#_.net_Automated Tests_Cucumber_Specflow - Fatal编程技术网

C# Specflow中的表是否与步骤定义或要素文件关联?

C# Specflow中的表是否与步骤定义或要素文件关联?,c#,.net,automated-tests,cucumber,specflow,C#,.net,Automated Tests,Cucumber,Specflow,我查阅了Specflow和Cucumber的文档,没有找到这个问题的确切答案。比如说,我有一个[给定的]步骤,其中有一个充满输入的表格,如下所示: Given I login with a <pin> and it is a valid <user role> | PIN | User Role | | 111111 | Admin | | 222222 | User | 给定我使用a登录并且它是有效的 |PIN |用户角色| |111111

我查阅了Specflow和Cucumber的文档,没有找到这个问题的确切答案。比如说,我有一个[给定的]步骤,其中有一个充满输入的表格,如下所示:

Given I login with a <pin> and it is a valid <user role>
| PIN    | User Role |
| 111111 | Admin     |
| 222222 | User      | 
给定我使用a登录并且它是有效的
|PIN |用户角色|
|111111 |管理|
|2222222 |用户|
我的主要问题是,如果在其他要素文件中重复使用此步骤,是否每次使用时都必须重新复制表,或者表是否随全局访问的步骤定义一起移动


我正在为我的公司从头开始设计Specflow解决方案,我正在尽可能地坚持干燥。因此,为可重用共享步骤奠定基础是我的一个优先目标。我可能想得太多了,因为树木的缘故,我看不到森林,但我喜欢用简单的语言来描述这些细节,因为这有助于我更好地学习。因此,如果您在另一个功能文件中使用完全相同的步骤,则无需复制。相同的步骤定义在要素文件中是全局的,因此数据也是全局的。每个步骤都应该完全相同。如果您在步骤中更改了一个字母,则必须生成另一个步骤定义。

好的,太好了。这回答了我的问题。我正在尝试创建一个登录表,其中包含我可以测试的所有潜在用户角色,我希望将其存储在一个SharedUtilities功能文件中,这样我就有了所有数据的中心位置,以便于维护。我知道这不是严格意义上的BDD,但从组织的角度来看,这对我来说是有意义的。酷。谢谢:)