我的测试一直在命令行上运行(使用 dotnet.exe test
),但是在 Visual Studio 2017 的测试资源管理器中运行它们时,一些测试崩溃了。由于我在之前的调试工作中得到的笔记,一个特定的测试因内存不足异常而崩溃(我不得不缩小测试的范围以防止它崩溃)。
我正在 .NET Framework 4.5.1、.NET Core 1.0 和 .NET Core 2.0 上进行测试(当前场景是在 .NET Core 1.0 上)。
我想知道是否有官方方法可以增加 Visual Studio 2017 中测试资源管理器的堆大小?
NOTE: Ideally, I'd like to put together a command or configuration that is automated so that anyone who clones my repo and runs tests in Visual Studio 2017+ will have the increased heap size.
我尝试了什么
我发现了 this article这解释了如何增加内存,但它是为了增加您正在开发的 EXE 的大小,而不是为了测试。我按照说明使用 editbin.exe
实用程序尝试增加 C:\Program Files\dotnet\dotnet.exe
,但这似乎没有任何效果(测试仍然崩溃)。
最佳答案
当您的测试在限制可用内存的 32 位主机中运行时,可能会发生这种情况。
VS 集成的测试资源管理器可以在 32 位和 64 位模式下运行,通常默认为 32 位。这可以通过菜单 Test > Test Settings > Default Processor Architecture
菜单轻松更改:
关于c# - 如何增加堆大小以在 Visual Studio 2017 中运行 .NET Core 1.x/2.x 测试?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45944741/