在某些系统上,而不是其他系统,在我的办公室,似乎dotnet核心不稳定,或许其他东西(视觉工作室2017年rc?)干扰,并且" dotnet测试"在其他地方工作的命令是挂起的(没有输出,没有运行测试,只是冻结):
xUnit.net .NET CLI test runner (64-bit .NET Core win10-x64)
Discovering: x.y.UnitTests
Discovered: x.y.UnitTests
Starting: x.y.UnitTests
我试图找出原因是什么。它阻止CI和开发人员。我相信它可能是孤立和修复的,我会问这个以防万一有人看到它,或者如果我弄清楚,我会回答它,所以其他被困在这里的人可能会被解雇。 / p>
答案 0 :(得分:0)
xUnit对dotnet核心项目的支持需要非常特定版本的dotnet核心,dotnet核心CLI,xunit和dotnet-test-xunit,如xUnit documentation中所定义。在尝试在Visual Studio Team Services中运行测试时,我也遇到了您描述的行为,遗憾的是我无法控制.NET Core CLI版本。在我的本地计算机上运行相同的测试没有问题,我已经确认xunit软件包版本和dotnet工具版本与xUnit支持的版本匹配。我怀疑您遇到问题的机器没有受支持的dotnet工具和xunit软件包版本。
答案 1 :(得分:0)
我找到了解决我非常相似问题的方法。我在测试中使用了anynch方法,并使用.Result访问结果。这可能会导致deadlock situation in x-unit。而是尝试使用async声明您的方法,然后使用await来获取结果。我在stackoverflow
上找到了解决方案答案 2 :(得分:-2)
关于xUnit文档,我已切换到使用 dotnet xunit 命令而不是 dotnet test 。另外,我必须指定额外参数 -parallel none 。这解决了我的问题。