NUnit未能仅在项目上引用Moq

时间:2011-12-23 15:37:10

标签: c# .net-4.0 nunit moq

我有一个测试组件。如果我将该测试程序集加载到NUnit中,则所有测试都会成功。

如果我将该测试保存为项目,我会在参考Moq时出现159错误。

项目文件如下所示

<NUnitProject>
  <Settings activeconfig="Default" />
  <Config name="Default" binpathtype="Auto">
    <assembly path="My.Assembly.Name.dll" />
  </Config>
</NUnitProject>

错误是

My.Test.Name:
System.IO.FileLoadException : Could not load file or assembly
'Moq, Version=4.0.812.4, Culture=neutral, PublicKeyToken=69f491c39445e920' or
one of its dependencies. The located assembly's manifest definition does not
match the assembly reference. (Exception from HRESULT: 0x80131040)

错误本身就足够了。我们正在使用NuGet的v4.0.10827,所以你不会指望它找到v4.0.812.4。问题是:为什么要查找它,为什么只有当我使用.nunit项目文件时?

测试程序集未引用旧版本,并且解决方案中没有其他程序集引用它。

1 个答案:

答案 0 :(得分:3)

尝试将.nunit项目文件重命名为My.Assembly.Name.dll.nunit,我遇到.nunit项目没有找到测试中的程序集的app.config文件的问题,这就是我解决它的方法。