在五个以上核心上并行运行单元测试

问题描述 投票:0回答:2

我已按照信中Link上的说明进行操作,我可以并行执行测试。

到目前为止一切顺利。

现在的问题是:我无法将并行测试计数设置为零(自动配置)或大于 5 的值。运行五个并行测试可以正常工作,但不能设置六个。

是的,我的机器上有五个以上的核心;我正在 Intel i7 处理器上运行,该处理器有四个具有超线程的内核,这意味着我应该能够并行运行 8 个测试。

现在我确信还有一些其他逻辑或硬限制,并且我不期望能够在八个核心上以闪电般的速度并行运行八个测试。

但是,如果知道它没有并行运行超过五个测试的原因会很酷吗?

visual-studio unit-testing visual-studio-2010 parallel-processing
2个回答
6
投票

看来这是MSTest的一个bug。我偶然发现了同样的问题,所有测试都被标记为中止,并且“测试结果”窗口中有一个“测试运行错误”链接,如果单击该链接,则会产生以下消息:“测试运行正在中止 '',挂起的测试数量超过最大允许“5””。

更新:已在 Visual Studio 2010 Service Pack 中修复。


1
投票

这可能只是我的问题,但超线程并不是真正的核心,所以 i7 实际上只有 4 个物理核心,而不是 8 个。也许这与此有关。

或者可能存在一些与操作系统如何使用超线程相关的 BIOS 设置,从而阻止了超线程。

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