xUnit测试跳过了。

3
在我的VS2017解决方案中,我有多个单元测试项目。其中一个项目中的xUnit测试无法被mstest发现,因此无法运行。 但是会收到以下警告:
Warning: [xUnit.net 00:00:00.7641189] Skipping: Testing.UnitTests (could not find dependent assembly 'Microsoft.VisualStudio.QualityTools.UnitTestFramework, Version=10.0.0')
然而,在该项目中以确切版本引用了Microsoft.VisualStudio.QualityTools.UnitTestFramework。我有多个单元测试项目。其中许多包含xUnit测试,但是它们可以被找到和执行而没有任何问题。
所有包含xUnit测试的项目都分配了相同的xUnit nuget包,特别是xunit.runner.visualstudio。
我也使用了NCrunch,NCrunch没有问题地发现并执行了相关的xUnit测试。
那么,我的问题可能是什么原因呢?
进一步的发现:
- 将Microsoft.VisualStudio.QualityTools.UnitTestingFramework升级到10.1.0.0版本后,xUnit测试被发现,但是突然之间从2447个失败到了438个。那些失败的测试 - 大多数不是xUnit - 之前都可以正常工作。 - 关闭并重新启动Visual Studio后,UnitTeestingFramework自动重置为10.0.0版本 - 打开引用管理器(添加引用),所有项目引用都显示为选中复选框,除了Microsoft.VisualStudio.QualityTools.UnitTestingFramework。如果我先在搜索框中添加“Quality”,然后我就可以看到Microsoft.VisualStudio.QualityTools.UnitTestingFramework,但是接着我会看到它出现了3次。一次选中(版本10.0.0.0),另一次相同版本但不同路径,还有一次版本为10.1.0.0
总的来说,这看起来相当奇怪...

你所有的项目都使用相同版本的.NET框架吗? - Peter Szekeli
是的,它们都使用 .Net 4.6.1。 - Rainer
你是否尝试过关闭Visual Studio并删除".vs"文件夹? - D.J.
刚刚关闭了VS并删除了.vs文件夹,然后重新启动了VS,但对我的问题没有任何影响。 - Rainer
1个回答

1
我曾经遇到过这个问题,但不确定是否与你的问题完全相同。我在输出/测试窗口中看到了一个错误,其中指出无法恢复软件包xunit.runner.utility 2.2.0。
在包管理器控制台中手动添加它后,如下所示:
install-package xunit.runner.utility -v 2.2.0

它又开始工作了


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接