1

我想监视在 CI 中运行的 xunit.net 测试(如果您知道 nunit 的类似方法,它也可能会有所帮助)。

运行时间加倍的集成测试,我想获得方法调用时间和资源使用情况等信息。

我启动了 Windows 性能监视器,但我不清楚在测试中花费的时间以及为什么它在执行中加倍。

有什么建议吗?谢谢!

4

1 回答 1

1

对于可能花费您几美元的高科技选项,请查看分析工具。有一个非常好的 dotnet 称为 ANTS Performance Profiler,它可以帮助您找出一些瓶颈所在。它还将链接到您的代码,以准确显示问题出现的位置。

我能想到的最简单的免费(就像只花时间)方法是引入一个基本测试类,并使用 setup/teardown 方法将时间和其他信息记录到控制台或文件中。或者,您可以创建一个用于每个测试的测试工具,并在那里添加日志记录。稍微复杂一点的方法是使用某种委托方法来触发测试的分配/执行/断言阶段,并在那里应用您的日志记录。就个人而言,我使用名为 StoryQ 的产品进行所有 C# 测试。如果我需要记录一些东西,我会引入一些扩展方法来有效地包装我的日志记录,同时仍然充当测试步骤。

如果是我,我会花钱选择分析器。它会一次又一次地为自己付出代价,并真正帮助您确定将时间投入到优化代码的地方。

于 2011-11-30T06:44:25.140 回答