2

要配置和使用 SpecRun 的许多功能(Specflow 的增强版本,.NET 的黄瓜),您需要某种.sfprofile文件。一个文件“ default.sfprofile”应该是并且(我假设)通常在安装 Nuget 包时为您创建。但它对我没有这样做。

还有另一种方法来触发“ default.sfprofile”的创建吗?如果没有,如果我自己创建它会好吗?如果这可行,有人可以发布这个文件的初始内容吗?谢谢!

4

2 回答 2

1

如果您安装了 SpecFlow for Visual Studio 扩展,则 SpecFlow+ Runner 配置文件模板可用作项目模板:

在此处输入图像描述

它是列表中的最后一个。

请注意,默认情况下 VS 会尝试将其创建为 Default1.srProfile。您需要手动调整文件名。

旧的和过时的答案:

该文件的模板位于 packages\SpecRun.SpecFlow.1.2.0\content\Default.srprofile.pp

复制它并用您的值替换 {...} 占位符。projectId 是一个 Guid。

于 2016-01-06T07:19:32.207 回答
0

安德烈亚斯的回答是正确的。但后来我发现了为什么nuget 无法正确安装 SpecRun.SpecFlow。我相信它与以前安装遗留下来的工件有关,后来被删除了。它在我之后正确安装:

  1. 从我的解决方案的 \packages\ 目录中删除了“SpecRun.Runner.1.2.0”和“SpecRun.SpecFlow.1.2.0”目录
  2. 从 C:\Users\[me]\AppData\Local\Temp\VisualStudioTestExplorerExtensions\ 中删除了“SpecRun.Runner.1.2.0”目录
  3. 从相关项目中删除了“obj\debug”和“bin\debug”目录。
  4. (这绝对是问题的一部分:)从我的项目中删除了这些文件:“Default.srprofile”、“runtests.cmd”、“SpecRunTestProfile.xsd”。这些已通过先前的卸载从我的解决方案中删除,但仍存在于文件系统中。
  5. 为了更好地衡量,从源代码控制检查了整个项目并通过 Nuget 命令行 ( Install-Package SpecRun.SpecFlow) 运行,因为此时我绝望并尝试了一切。

完成所有这些后,SpecRun.Runner 安装正确。不确定所有这些都需要,但至少其中有几个是,每个单独的都没有做到这一点。哦,还有另一个问题:

  1. 即使大部分成功(得到了我闪亮的新“Default.srprofile”!),我仍然需要在 app.config 中修复一些东西:安装正确添加了<unitTestProvider name="SpecRun" />元素,但错误地留在了旧<unitTestProvider name="MsTest" />元素中。必须把它拿出来让所有人开心。

当然,现在我有这个问题,但这无关紧要。

于 2016-01-06T21:50:54.187 回答