Visual Studio单元测试在TFS Build上运行较慢

问题描述 投票:14回答:1

我的项目有1000多个单元测试,在本地机器上,所有测试都在不到10秒的时间内完成。但是当他们在TFS Build上运行时,某些测试的运行速度明显慢于其他测试。其中3个在大约1-2分钟内运行,其他4个在5-30秒内运行,其他的则在几分之一秒内运行。我注意到所有那些较慢的测试都使用来自Microsoft Fakes的假货,而且每一个都是第一个在它的类中运行的。但是很多其他测试也使用假货(一些更密集)并且定期运行。我想知道可能导致这种减速的原因以及如何解决这个问题。

编辑:我注意到,在无模拟测试之后,每个较慢的测试都会运行。也许这种减速是由ShimsContext的初始化引起的。在我的测试类中,ShimsContext是在TestInitialize和TestCleanup方法上创建和处理的。这会对性能产生重大影响吗?

c# unit-testing visual-studio-2013 tfs microsoft-fakes
1个回答
0
投票

请参阅以下链接:https://softwareengineering.stackexchange.com/questions/184834/how-do-we-make-unit-tests-run-fast

http://arlobelshee.com/the-no-mocks-book/

链接说快速进行测试可能很困难。解耦是关键。模拟/假货是可以的,但是通过重构来制作模拟/假货可以做得更好。

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