2009-09-15 76 views
12

Resharper单元测试运行程序运行速度明显低于nunit控制台或nunit gui。Resharper单元测试运行程序比NUnit控制台显着更慢

例如,3800个测试通过nunit控制台需要超过60秒,但这些相同的测试需要5分钟的时间才能在Resharper Unit Test runner中运行。为什么有如此显着的差异?

由于我们的测试代码库已经显着增长,这真的开始减慢我们的速度。有没有人遇到过类似的问题?你怎么处理它?

Resharper Visual Studio集成非常好,但我们可能需要采取其他措施。

+2

根据我的经验*使用Resharper时,大多数事情*会比较慢,这真的很可惜,因为除此之外它是一个很好的加载项... – 2009-09-15 21:23:03

回答

14

我有同样的问题,我切换到TestDriven.Net,它闪电般快。

+1

Jamie Cansdale的TestDriven.NET的+1。它是一个超级软件。不过,我发现Resharper的测试跑步者在运行较小的测试套件时会很满意。 – 2009-09-15 21:30:44

+0

vs2010内部测试赛跑者也非常快。太糟糕了,它不适用于nunit :( – andrecarlucci 2010-11-24 12:19:56

+1

只是我的2cents,但从TestDriven.Net,也有NCrunch这种类型的事情,它是,恕我直言,必须有一个工具与resharper一起。 – pms1969 2014-04-01 12:57:36

8

我不认为Resharper的目标是提供一个实用程序来从Visual Studio中执行整个测试套件。这通常是运行持续集成工具的构建服务器或测试套件服务器的目标(如从CruiseControl启动的NUnit)

Resharper单元测试运行器通过运行少量单元测试来诊断和满足特定单元的代码。它允许您创建专注的测试套件,可以方便地从工作室内运行,调试,重复和快速分析,无需等待构建。

我会建议利用构建服务器来运行完整的测试套件。

+8

我们正在使用一个构建服务器来运行测试,但我们的策略是尽量不要在提交更改之前中断构建,因此我们通常在提交之前运行所有单元测试。 – jamesaharvey 2009-09-15 21:32:57

+0

R#的测试运行器非常方便快速为了避免打破构建,你可以使用TeamCity的Personal Build或Pre-Commit选项。请参阅http://www.jetbrains.net/confluence/display/TCD4/Personal+Build(可选),只需从Tools中运行NUnit菜单 – TrueWill 2009-09-16 01:17:44

+6

利用构建服务器来运行整套测试是一个糟糕的主意,它会产生很多破损的构建,并且会导致持续部署失效,更新,测试全部,然后提交。 – andrecarlucci 2010-11-24 12:18:19

相关问题