Passing values to Specflow Scenario methods from feature file(将值从要素文件传递到Speflow方案方法)
本文介绍了将值从要素文件传递到Speflow方案方法的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我在Hook.cs文件中定义了一个自定义标记,如
[BeforeScenario("AfterUpgradeTag")]
public void BeforeScenarioAfterUpgrade()
{
// Code execution here
}
我想做的是更改其方法定义,如
[BeforeScenario("AfterUpgradeTag")]
public void BeforeScenarioAfterUpgrade(bool flag)
{
if(flag)
// Code execution here
else
//Do a clean up
}
我想在功能文件中使用它,类似于
@AfterUpgradeTag(bool val = false)
我已经为此搜索了很多次。我想知道使用specflow是否可能实现这一点,或者是否有其他选择
推荐答案
我不确定您是否可以在功能文件中传递类似的参数,但您可以利用标记来实现您的目标
在功能文件中执行此操作
@upgrade @false
Scenario: testing upgrade
在绑定类中
public static ScenarioContext _scenarioContext;
和绑定类构造函数
public BindingClass(ScenarioContext scenarioContext)
{
_scenarioContext = scenarioContext;
}
并且您的BeForeScenario方法在类BindingClass
[BeforeScenario("upgrade")]
public void BeforeScenarioUpgradeFalseorTrue()
{
if (BindingClass._scenarioContext.ScenarioInfo.Tags.Contains("false"))
{
log.Info("upgrade is false..");
}
if (BindingClass._scenarioContext.ScenarioInfo.Tags.Contains("true"))
{
log.Info("upgrade is true..");
}
}
如果要传入true
功能文件,只需执行
@upgrade @true
Scenario: testing upgrade
这篇关于将值从要素文件传递到Speflow方案方法的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!
沃梦达教程
本文标题为:将值从要素文件传递到Speflow方案方法
猜你喜欢
- MoreLinq maxBy vs LINQ max + where 2022-01-01
- WebMatrix WebSecurity PasswordSalt 2022-01-01
- 带有服务/守护程序应用程序的 Microsoft Graph CSharp SDK 和 OneDrive for Business - 配额方面返回 null 2022-01-01
- Web Api 中的 Swagger .netcore 3.1,使用 swagger UI 设置日期时间格式 2022-01-01
- 输入按键事件处理程序 2022-01-01
- 在哪里可以找到使用中的C#/XML文档注释的好例子? 2022-01-01
- C# 中多线程网络服务器的模式 2022-01-01
- 如何用自己压缩一个 IEnumerable 2022-01-01
- C#MongoDB使用Builders查找派生对象 2022-09-04
- 良好实践:如何重用 .csproj 和 .sln 文件来为 CI 创建 2022-01-01