gpt4 book ai didi

c# - 我如何获得 Resharper 中止测试的原因?

转载 作者:可可西里 更新时间:2023-11-01 08:11:27 26 4
gpt4 key购买 nike

我正在使用 Resharper 9.2 和 NUnit 2.6.4 以及大约 120 个单元测试。有时,当我开始运行测试时,resharper 会停止随机测试并将其状态设置为已中止并跳过其他测试。这非常不方便,因为我已经手动运行了其余的测试。是否有任何方法可以获取中止原因、一些 resharper 测试运行日志或 NUnit 中的某些内容来帮助解决我的问题?

我还尝试使用 native NUnit 运行程序,但它有时会抛出不包含任何有用信息的异常(一些远程处理异常,但没有任何用处)

我尝试设置“最多并行运行 1 个程序集”和“为每个程序集使用单独的 AppDomain 进行测试”,但没有帮助。

UPD

我在 Debug模式下重现了这个,调试单元测试刚刚关闭,在我发现的输出窗口中:

The program '[4572] JetBrains.ReSharper.TaskRunner.CLR4.exe: Program Trace' has exited with code 0 (0x0).
The program '[4572] JetBrains.ReSharper.TaskRunner.CLR4.exe: Managed (v4.0.30319)' has exited with code -1073741819 (0xc0000005) 'Access violation'.

看来问题是外部的库不安全代码。

最佳答案

我还遇到过 Resharper 决定持续中止测试的情况。它没有调用不受管理或任何怪异的东西。

答案是它有一个无意的递归调用导致了 stackoverflow 异常。当我决定“调试”而不是“运行”它们时,这一点很明显。

因此,我假设一般要点是,“中止”测试是出现问题的征兆,但该错误并未导致从代码本身抛出异常,而是从 CLR 或其他地方抛出异常。

关于c# - 我如何获得 Resharper 中止测试的原因?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33124109/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com