“测试资源管理器”中的“运行全部”不再完成(VS2017 Enterprise)。它因已通过 (411)、未运行 (309) 而停止。计数略有不同,通常大约各半。
输出窗口(Visual Studio | 输出选项卡 | 显示来自:测试的输出)包含以下错误消息:
“活动测试运行已中止。原因:未处理的异常:System.AppDomainUnloadedException:尝试访问已卸载的 AppDomain。”
测试在 ReSharper 中继续运行良好(720 次中的 720 次通过)。 R# 是我通常运行测试的地方。当我尝试分析代码覆盖率时,我会跳到 Microsoft 的“测试资源管理器”(尽管无论有没有代码覆盖率,测试都会停止)。它(分析代码覆盖率)最近在 2018 年 5 月 15 日起作用(在此之前至少有六到十几次)。
检查测试输出窗格以获取更多详细信息 - 打开输出窗口并从“显示输出”组合框中选择“测试”选项。
就我而言,我的测试项目针对的是我未安装的 .NET core 版本。我只需将项目目标框架更改为正确的版本即可解决问题。
Microsoft 测试运行程序被一个单元测试类绊倒,该类碰巧具有如下所示的 Task.Run() 调用:
var task = Task.Run(async () =>
{
<various code>
});
这些测试缺少对task.Wait()的调用,以在退出测试之前等待每个任务完成。
(这似乎会使 Microsoft 测试运行程序出错,但不会使 ReSharper 测试运行程序出错。具体来说,Microsoft Test Runner 中止 sln 测试运行并跳过 300 多个测试。ReSharper 能够顺利运行所有测试。)
旁白:Windows 7 与 Windows 10 上行为不同的原因是因为测试类是针对 Windows 10 敏感的第 3 方控件/库。
很简单 构建 -> 清晰的解决方案 帮帮我吧。
设置输出窗口下拉测试后检查输出窗口。
我的问题是其中一个测试正在进行无限循环。