我正在使用SpecFlow和NUnit3,并试图访问钩子中的步骤上下文。
我正在并行运行测试,因此不使用任何静态实例上下文,而是使用SpecFlow的参数解析功能。
使用下面的钩子,ScenarioContext实例可以很好地解析,但ScenarioStepContext会导致绑定抛出错误:
无法解析原始类型或结构:TechTalk.SpecFlow.Bindings.StepDefinitionType(解析路径:TechTalk.SpecFlow.ScenarioStepContext-> TechTalk.SpecFlow.StepInfo)'
[AfterStep]
public void LogStepResult(ScenarioStepContext scenarioStepContext,
ScenarioContext scenarioContext)
{
}
答案 0 :(得分:1)
发现它埋藏在一些文件......
您可以使用StepContext属性中已解析的ScenarioStepContext
附带的ScenarioStepContext
,而不是尝试解析ScenarioContext
:
[AfterStep]
public void LogStepResult(ScenarioContext scenarioContext)
{
var stepContext = scenarioContext.StepContext;
}
答案 1 :(得分:0)
如果您未在测试中使用并行执行,则可以直接调用ScenarioContext。这是一个example。如果您并行运行测试,则可以使用之前的答案。