我刚刚通过 nuget 安装了“specflow.nunit”包,但是包含规范的项目需要编译,因为SpecFlowNUnitExtension
添加到项目中的类缺少对 nunit.core 的引用(更具体地说是“NUnit.Core”和找不到“NUnit.Core.Extensibility”命名空间)。其他人有同样的问题吗?你有办法解决吗?
5 回答
我通过安装 NUnitTestAdapter Nuget 包来修复它。
Okei,看来我已经找到解决它了;所需的 dll 可以从http://www.nunit.org/index.php?p=download下载。下载“bin”版本,解压缩 zip 存档,在“lib”文件夹内有 SpecFlowNUnitExtension 所需的 2 个程序集: - nunit.core.dll - nunit.core.interfaces.dll
添加对这两个 dll 和项目编译的引用。
(虽然有点尴尬;这些程序集不应该与 specflow.nunit 包捆绑在一起吗?)
我们的修复是从我们的项目中删除 SpecFlowNUnitExtension.cs,该项目是在安装 SpecFlow.NUnit NuGet 包期间添加的。根据文件顶部的注释,仅当您使用我们未使用的 nunit.console 运行器之一时才需要它。
我不确定这仍然是一个问题,但我今天遇到了同样的问题。我可能做错了什么...... :)
经过大量搜索、安装和重新安装,我找到了这篇文章: https ://answers.launchpad.net/nunitv2/+question/192677
我安装了已弃用的 NUnit.Runners 包,它最终使参考错误消失了。这看起来真的很笨拙,所以再一次,我一定遗漏了一些东西,但我认为在此记录会有所帮助,以防其他人遇到此问题。
安装 NUnitV2.Core Nuget 包解决了缺少的参考错误。