QTAgent32.exe已停止工作

问题描述 投票:11回答:6

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

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

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

.net visual-studio unit-testing visual-studio-2012 resharper
6个回答
8
投票

最终我找到了原因

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


4
投票

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

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

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

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


2
投票

FWIW:我在VS2012中的解决方案是删除解决方案目录中的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文件。


1
投票

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

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


0
投票

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

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


0
投票

在我的情况下,我有一个async测试,在assert声明后进行了清理。测试总是绿色(通过),但每次执行后都会出现'QTAgent32.exe has stopped working'错误。

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

我只是通过调试测试就找到了问题。也许这将有助于未来的人。

© www.soinside.com 2019 - 2024. All rights reserved.