Visual Studio 2015 Web版无法发现xUnit测试问题求助
解决Visual Studio 2015 Web版中.NET Core xUnit测试异常的问题
嘿,我瞅你在Visual Studio 2015 Web版里搞.NET Core项目的xUnit测试时碰到异常了,结合你贴的project.json和测试代码片段,我整理了几个大概率能解决问题的方案,你试试看:
1. 调整project.json的依赖配置
你当前用的dotnet-test-xunit是预览版,而且xUnit版本和VS2015的兼容性可能不太匹配,建议把project.json改成下面这样:
{ "version": "1.0.0-*", "dependencies": { "xunit": "2.2.0", "xunit.runner.visualstudio": "2.2.0" }, "testRunner": "xunit", "frameworks": { "net461": { } } }
为啥这么改?
- 把xUnit及其VS运行器的版本降到2.2.0,这个版本和VS2015的适配性更稳定,不会有预览版的奇怪bug
- 移除了
dotnet-test-xunit,因为针对net461框架,这个工具包主要是给.NET Core CLI用的,VS2015内置的测试运行器根本不需要它
2. 确保测试代码完整
你贴的测试代码里[Fact]后面的内容没写完,一定要保证测试方法是完整可编译的,比如:
using Xunit; namespace Tests { public class Class1 { public Class1() { } [Fact] public void TestMethod1() { // 举个简单的断言例子,你可以换成自己的测试逻辑 Assert.Equal(2, 1 + 1); } } }
如果测试方法没有方法体或者语法错误,肯定会导致编译或运行时异常。
3. 清理重建解决方案
有时候项目缓存会搞事情,按下面的步骤操作:
- 点击VS顶部菜单的生成 -> 清理解决方案
- 接着点击生成 -> 重建解决方案
- 完成后再尝试运行测试,看看异常是不是消失了
4. 检查VS2015的更新情况
VS2015对.NET Core的支持需要安装Update 3以及对应的.NET Core工具包,如果没装的话,赶紧补上——这是很多兼容性问题的根源。
内容的提问来源于stack exchange,提问作者Roddeck
相关产品推荐
相关产品推荐

