C# 我可以将一个功能文件调用到同一套件中的另一个功能文件中吗(调用场景的解决方案也可以)

C# 我可以将一个功能文件调用到同一套件中的另一个功能文件中吗(调用场景的解决方案也可以),c#,automation,bdd,specflow,gherkin,C#,Automation,Bdd,Specflow,Gherkin,我有一个测试套件,其中我有多个BDD场景出现在不同的功能文件中,如下所述 **FeatureFile1** Scenario: User is performing 123 funtionality Given A,B,E,F,G When User does A Then Output is Aresult When User does B Then Output is Bresult When User does E Then Output is Eresult When USer do

我有一个测试套件,其中我有多个BDD场景出现在不同的功能文件中,如下所述

**FeatureFile1**

Scenario: User is performing 123 funtionality

Given A,B,E,F,G
When User does A
Then Output is Aresult
When User does B
Then Output is Bresult
When User does E
Then Output is Eresult
When USer does F
Then Output is Fresult
When User does G
Then Output is Gresult


**FeatureFile2**

Senario: User is performing 4567 functionality

Given M,N,A,B,E,F,G,P,Q
When User does M
Then Output is Mresult
When User does N
Then Output is Nresult
When User does A
Then Output is Aresult
When User does B
Then Output is Bresult
When User does E
Then Output is Eresult
When USer does F
Then Output is Fresult
When User does G
Then Output is Gresult
When User does P
Then Output is Presult
When User does Q
Then Output is Qresult



**FeatureFile3**

Senario: User is performing 890 functionality
Given U,V,A,B,E,F,G,X,Y,Z
When User does U
Then Output is Uresult
When User does V
Then Output is Vresult
When User does A
Then Output is Aresult
and User does B
Then Output is Bresult
When User does E
Then Output is Eresult
When USer does F
Then Output is Fresult
When User does G
Then Output is Gresult
When User does X
Then Output is Xresult
When User does Y
Then Output is Yresult
When User does Z
Then Output is Zresult
如果仔细查看,我的第一个功能文件在我的第二个和第三个文件中完全重复(在步骤之间)

是否有任何方法可以使用单行调用其他文件中的第一个功能文件(FeatureFile2理解它必须调用FeatureFile1,对于其他情况也是如此)

这些将减少复制+粘贴对我来说,而且我的其他场景(冗长的一个)将看起来紧凑和体面。因为我是BDD和C的新手,希望得到帮助。我试图寻找解决办法,但找不到任何具体的办法

如果我可以调用FeatureFile2中FeatureFile1中存在的场景…也可以

应该写什么代码

使用Specflow的框架|| C#编码语言||
BDD语言小黄瓜我通常解决这种情况的方法是创建一个包含其他几个步骤的步骤,然后在第二个和第三个特性中调用它。您可以在

中看到这种方法的示例,我们使用vstest控制台。 例如 当场景未准备数据时, 在第一步中,我们运行数据准备的特殊功能

关于控制台运行的参数,如下所示

public class MySteps:Steps//继承此基类至关重要,否则下面使用的方法将不可用{[Given(“我已创建订单”)]public void CreateOrder(){Given(“我想创建销售订单”);Given(“我打开销售订单页面”);Given(“我单击添加新订单按钮”);然后(“创建了一个新的销售订单”);}
我可以从父类继承函数,但我不能像上面所述那样直接在给定类中编写给定语句。。我做得不对吗?因为我正在从When和Then(预期结果)语句中传递所有命令/数据,所以我需要一些东西来拾取When/Then语句并从这些语句中传递内联参数(在子类中使用继承调用这些语句)然后它会调用映射的方法。@surajgupta我不确定问题出在哪里。请清楚地问另一个问题,为什么这对您不起作用,并举例说明,我将尝试回答这个问题。一旦你做到了,请在这里用链接发表评论hi@samholder。。我已经添加了另一个与更多的细节,请看一看。