QTAgent32.exe已停止工作

时间:2013-08-07 16:24:48

标签: .net visual-studio unit-testing visual-studio-2012 resharper

我有一个VS2012 / .NET4.5解决方案,有大量的单元测试

从解决方案运行所有单元测试时,我随机收到“QTAgent32.exe已停止工作”错误消息,此时单元测试挂起。

我的单元测试实际上是MSTest,我使用VS的Resharper菜单运行它们。 Resharper Edition是7.1.3,不确定是否重要。 VS 2012 SP 3

6 个答案:

答案 0 :(得分:8)

最终我找到了原因

一段代码写得不正确,在某些情况下导致无休止的递归和堆栈溢出。因此,如果您收到相同的错误“ QTAgent32.exe已停止工作”,请尝试检查此时您的通话记录是什么。

答案 1 :(得分:4)

我遇到了类似的问题,所以我会在这里为其他任何有同样问题的人提出解决方案。

我会得到" QTAgent32.exe已停止工作"每当试图运行任何单元测试时。这是在我通过将一些代码提取到类库中来重新组织我的解决方案之后开始的。

这是VS Premium 2012中的.NET 3.5解决方案,更新4。

最后的修复是删除suo文件。 (顺便说一下,这是一个隐藏文件。)

答案 2 :(得分:2)

FWIW:我在VS2012中的解决方案是删除solutions目录中的TraceAndTestImpact.testsettings文件。 (可能与删除MySolutionName.sln.DotSettings.user并以提升的权限运行)

如果您得到以下内容,

An exception occurred while test discoverer 'MSTestDiscoverer' was loading tests.
Exception: An error occurred while initializing the settings provider named 'MSTest'.
Error: The test settings file C:\....\TraceAndTestImpact.testsettings, specified in
the MSTestAdapter settings, is not available. Either access to the file is denied or
the file does not exist. Ensure that the test settings file is available and try again.

尝试使用提升的权限加载解决方案。要添加侮辱伤害,不会创建新的TraceAndTestImpact.testsettings文件。

答案 3 :(得分:1)

我遇到了同样的问题,问题是Thread.Sleep内有ThreadPool.QueueUserWorkItem的一些测试。

我在删除测试配置文件后发现错误的位置: my-project.testsettings 。删除此文件已停止 QTAgent32.exe已停止工作消息,并开始显示有关正在中止的线程的异常。

答案 4 :(得分:0)

在重新启动我的电脑,运行Visual Studio Professional 2013 Update 2后,我也发生了同样的情况。即使最简单的测试在输入之前也失败了,并且消息“QTAgent32.exe已停止工作”出现了。

以管理员身份运行Visual Studio为我解决了这个问题。可能只是消除症状而非原因,但它起作用。

答案 5 :(得分:0)

就我而言,我有一个async测试,该测试在assert语句之后进行了清理。测试始终为绿色(通过),但是每次执行后,都会出现'QTAgent32.exe has stopped working'错误。

assert语句之后,我在对象null上调用了一个方法。我认为这是由于async测试的行为导致NullReferenceException被吞咽了。

我仅通过调试测试就发现了问题。也许这会对将来的人有所帮助。