测试主机.exe崩溃并出现访问冲突异常



我的代码中有一个未经处理的异常,它:

  • 使我的测试主机.exe进程崩溃
  • 并且我的 Azure 管道生成失败(完全在 VSTest 任务内)。

异常:0xC0000005:访问冲突读取位置0xFFFFFFFFFFFFFFFF

在分析了崩溃的转储文件后,我发现:

  • 当我尝试使用PdfManager类的"保存"方法将我的 pdf 文档保存在指定的流中时,会出现此异常,我正在使用Select.Pdf.x64库。

有关信息: 我正在使用将测试框架从 MSTest 升级到 MSTestV2 将我的生成从 xaml 生成迁移到 azure 管道生成,我正在使用具有"发布"配置和"任何 CPU"作为平台的 MSBuild 任务构建我的项目,对于"VSTest"任务,我使用"x64"作为构建平台, "release"作为配置,MSTest.TestAdapter.2.1.1作为测试适配器,我使用的是VS 2019,这是运行设置文件:

<小时 />
<?xml version="1.0" encoding="utf-8"?>
<RunSettings>
<!-- Configurations that affect the Test Framework -->
<RunConfiguration> 
<MaxCpuCount>0</MaxCpuCount>
<ResultsDirectory>.TestResults</ResultsDirectory>
<TargetPlatform>x64</TargetPlatform>
<TargetFrameworkVersion>.NETFramework,Version=v4.7.2</TargetFrameworkVersion>
<DisableParallelization>false</DisableParallelization> 
</RunConfiguration>
<MSTest>
<TestTimeout>360000</TestTimeout>
<Parallelize>
<Workers>10</Workers>
<Scope>MethodLevel</Scope>
</Parallelize>
</MSTest>
<DataCollectionRunSettings>
<DataCollectors>
<DataCollector friendlyName="blame" enabled="True">
<Configuration>
<ResultsDirectory>.TestResults</ResultsDirectory>
<CollectDump />
<CollectDump />
</Configuration>
</DataCollector>
</DataCollectors>
</DataCollectionRunSettings>
<LoggerRunSettings>
<Loggers>
<Logger friendlyName="blame" enabled="True" />
</Loggers>
</LoggerRunSettings>
</RunSettings>
--------------------------------------------------------------------------------------------------

我试图通过使用装饰器"[HandleProcessCorruptedStateExceptions, SecurityCritical] 装饰负责异常的方法来捕获异常,但没有成功:( .

有人有解决方案吗?

测试主机.exe 具有访问冲突异常的粉碎

从Visual Studio 201916.4.3开始有一个已知的问题。

若要解决此问题,请尝试将 Visual Studio 2019 更新到最新版本。

降级到 mstest v1 一切正常,它似乎与 QTAgent 进程有关,因为只有 mstest v1 通过测试主机进程启动 QTAgent 进程。 ​ 感谢您的帮助:)

此问题主要发生在错误的声明类或某些错误的模式在语法中休耕时,这可能会导致访问冲突。

问题:
testhost.exe崩溃并出现访问冲突,并且 Web 驱动程序/浏览器未启动。

解决方案:
检查您的类和函数调用声明方法,并检查它是否与您的texthost.exe规则正确兼容/休耕。

最新更新