如何在Specflow中获取当前执行的步骤信息

Not*_*ica 6 bdd scenarios specflow

我们正在尝试为每个步骤截取屏幕截图.

一切正常.但我们无法将屏幕截图与创建它们的步骤相关联.

我们想要的是FeatureContext.FeatureInfoScenarioContext.ScenarioInfo.但是在个人的一级.这样我们就可以相应地标记屏幕截图.

Sam*_*der 7

编辑

添加了类,暴露:

ScenarioStepContext.StepInfo.TextScenarioStepContext.StepInfo.StepDefinitionType

哪个应该给你你想要的东西.

原始答案 这是目前不可能的,虽然我刚刚(昨天)提交了一个添加此功能的拉取请求.如果您对自己构建specflow感到满意,那么您可以克隆我的specflow repoScenarioStepContext分支并切换到分支,然后打开TechTalk.Specflow_VS2013.sln并自己构建项目.

首先,您需要为specget包提供一个新的版本号.打开SpecFlow.nuspec文件并将版本编辑为高于当前版本的版本(我使用1.9.3.4),然后构建解决方案(如果要构建这些版本,则需要安装VS2013 SDK和其他VS SDK).

构建解决方案后,您需要安装vsix

\SpecFlow\IdeIntegration\Vs2013Integration\bin\Debug\TechTalk.SpecFlow.Vs2013Integration.vsix

然后添加nuget包

\SpecFlow\Installer\NuGetPackages\bin\SpecFlow.1.9.3.4.nupkg.

完成此操作后,您将能够访问ScenarioStepContext.StepInfo.TextScenarioStepContext.StepInfo.StepDefinitionType能够使用当前步骤详细信息标记所需的元素.

我们目前正在使用它,但请在主要的Specflow github页面上提出关于PR的任何问题,如果可以,我会修复它们.