Visual Studio继续使用UnitTestFramework 10.0.0.0

时间:2012-03-24 17:18:20

标签: visual-studio unit-testing dll-reference

我有一个包含多个项目的解决方案。其中一个项目包括用于单元测试的附加Assert方法。它引用了Microsoft.VisualStudio.QualityTools.UnitTestFramework 10.1.0.0。它还包括其他测试项目,它们引用Microsoft的UnitTestFramework和我的项目以及其他断言方法。

每当我重新启动visual studio并编译时,我都会收到以下警告:

  

发现同一依赖的不同版本之间存在冲突   组装

我已经尝试将对UnitTestFramework的所有引用更改为10.1.0.0,但在重新启动Visual Studio时似乎再次将它们设置为10.0.0.0。我甚至尝试在Visual Studio之外更改项目文件,但在Visual Studio中打开项目后,引用再次显示解决方案资源管理器中的旧版本。关闭Visual Studio而不进行任何文件修改时,它会询问是否保存对项目文件的更改。

如何阻止Visual Studio在我的项目中更改引用的UnitTestFramework的版本?

2 个答案:

答案 0 :(得分:4)

有同样的问题。我们的一位开发人员正在重组组​​件,他的VS出于某种未知原因改变了这一点:

<Choose>
  <When Condition="('$(VisualStudioVersion)' == '10.0' or '$(VisualStudioVersion)' == '') and '$(TargetFrameworkVersion)' == 'v3.5'">
    <ItemGroup>
      <Reference Include="Microsoft.VisualStudio.QualityTools.UnitTestFramework, Version=10.1.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL" />
    </ItemGroup>
  </When>
  <Otherwise>
    <ItemGroup>
      <Reference Include="Microsoft.VisualStudio.QualityTools.UnitTestFramework" />
    </ItemGroup>
  </Otherwise>
</Choose>

进入这个:

<Reference Include="Microsoft.VisualStudio.QualityTools.UnitTestFramework, Version=10.1.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL" />
<Choose>
  <When Condition="('$(VisualStudioVersion)' == '10.0' or '$(VisualStudioVersion)' == '') and '$(TargetFrameworkVersion)' == 'v3.5'">
    <ItemGroup>
      <Reference Include="Microsoft.VisualStudio.QualityTools.UnitTestFramework, Version=10.1.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL" />
    </ItemGroup>
  </When>
  <Otherwise />
</Choose>

第一行不断改变其他人的系统(与你的症状相同)。

由于我们还没有计划支持3.5,我通过删除&#34;选择&#34;部分并简化为:

<Reference Include="Microsoft.VisualStudio.QualityTools.UnitTestFramework" />

(从参考中删除特定版本)

答案 1 :(得分:0)

就我而言,在VS2017 + Resharper中,我删除了对v 10.0.0.0的引用,并重新添加了对10.1.0.0的引用。只是在“参考”浏览器中重新分配参考并不能解决问题,也很奇怪,也没有将更改恢复到版本控制中的Tests.csproj文件。