如何识别 Specflow 上的后台步骤?
How to identify Background steps on Specflow?
我知道可以通过使用 ScenarioStepContext.Current.StepInfo
从 specflow 获取步骤信息,但是 return 如果步骤是否在背景块内,则不能。
有没有办法找出背景中的步骤或 Scenario/Scenario 大纲?
谢谢!
目前无法在 StepInfo 中获取此信息。
但是有一种可能的(但有点老套)的方法来获取这些信息。您必须查看 StackTrace 并在那里搜索名为 FeatureBackground() 的方法。这是生成代码中的方法,来自后台。
这段代码可以完成工作:
var stackTrace = new System.Diagnostics.StackTrace();
var stackFrames = stackTrace.GetFrames();
bool isBackground = stackFrames.Where(x => x.GetMethod().Name == "FeatureBackground").Any();
我知道可以通过使用 ScenarioStepContext.Current.StepInfo
从 specflow 获取步骤信息,但是 return 如果步骤是否在背景块内,则不能。
有没有办法找出背景中的步骤或 Scenario/Scenario 大纲?
谢谢!
目前无法在 StepInfo 中获取此信息。
但是有一种可能的(但有点老套)的方法来获取这些信息。您必须查看 StackTrace 并在那里搜索名为 FeatureBackground() 的方法。这是生成代码中的方法,来自后台。
这段代码可以完成工作:
var stackTrace = new System.Diagnostics.StackTrace();
var stackFrames = stackTrace.GetFrames();
bool isBackground = stackFrames.Where(x => x.GetMethod().Name == "FeatureBackground").Any();