我按照入门说明操作,上下文菜单中缺少“生成步骤定义”。
我尝试从nuget为mstest添加额外的specflow包,但仍然没有。
我有同样的问题。我在功能文件的上下文菜单中查找此选项,但此选项存在于功能文件内容的上下文菜单中。因此,尝试在Visual Studio文本编辑器中打开要素文件(* .feature),然后在文本编辑器中单击鼠标右键。文件示例:
Scenario: Add two numbers
Given I have entered 50 into the calculator
And I have entered 70 into the calculator
When I press add
Then the result should be 120 on the screen
假设您通过右键单击.feature文件而不是其他任何地方来调出正确的上下文菜单,那么您可能会发现问题实际上是由项目中未引用的TechTalk.SpecFlow.dll引起的。
要手动添加引用(NuGet没有为我做这个),右键单击项目的References文件夹,找到可能位于'[project] /packages/SpecFlow.XXX/lib中的TechTalk.SpecFlow.dll / netXX /'(X是版本号)。
当我没有正确的参考时,这是上下文菜单:
在这里我曾经做过:
这是SpecFlow.2.1.0和VS2010,这导致了另一个与.Net版本不兼容的问题,所以我最终使用了SpecFlow.1.9.0。
从扩展和更新安装specflow,然后重新启动visual studio,清理并重建解决方案
尝试从SpecRun.SpecFlow
Nuget
安装Packages
,安装完成后,您将在上下文菜单中获得“生成步骤定义”。
它对我有用。
这是因为您可能没有简单地在解决方案级别安装Extension for SpecFlow是不够的。
SpecRun.SpecFlow是一个评估版本,除非您准备播放许可证密钥。
我在我的解决方案中添加了NuGet包SpecFlow.xUnit
到单元测试项目,我在其中保存了我的功能文件。这解决了这个问题,我现在看到Generate step definitions
。
这可以通过在代码编辑器中右键单击要素文件并从弹出菜单中选择生成步骤定义来实现。然后显示对话框。