Ste*_*ris 11 unit-testing visual-studio 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的版本?
有同样的问题。我们的一位开发人员正在重新组织程序集,他的 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>
Run Code Online (Sandbox Code Playgroud)
进入这个:
<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>
Run Code Online (Sandbox Code Playgroud)
第一行在其他人的系统上不断发生变化(与您的症状相同)。
由于我们没有计划支持 3.5,因此我通过删除“选择”部分并简化为来修复它:
<Reference Include="Microsoft.VisualStudio.QualityTools.UnitTestFramework" />
Run Code Online (Sandbox Code Playgroud)
(从参考中完全删除特定版本)
| 归档时间: |
|
| 查看次数: |
2945 次 |
| 最近记录: |