c# - .NET 微基准测试 API

标签 c# .net unit-testing profiling benchmarking

<分区>

我正在寻找一个库来对单元测试进行微基准测试,以监控代码更改如何随时间影响性能。也就是说,我希望图书馆将结果输出到例如XML 来保存历史。它必须能够在没有任何人工助手的情况下执行此操作(即在我们的构建服务器上连续运行而不会造成太多麻烦)。

库应该非常简单,并且可以处理现有的单元测试。最好我想在我想测试的测试上用 [Benchmark] 属性标记测试,或者使用 using block ,例如

using (var benchmarker = new Benchmarker())
{
  // Code to profile
} // Dispose() stores measurements.

请注意,我对分析工具不感兴趣,因为我不想以编程方式指定要分析的代码部分。图书馆应该积极维护。

我看过Jon Skeet's solution , 但发现它有点太打扰了 NTime已经死了几年了。

最佳答案

您可以在单元测试中使用 Performance Profiler,并保存结果。进行更改,然后重新配置。有更复杂的方法可以做到这一点,但添加新的工作流程并不总是最好的选择。

关于c# - .NET 微基准测试 API,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6410110/

相关文章:

c# - 如何在 WinForms 应用程序中存储连接字符串?

.net - .net 记录最好的 IOC 框架是什么?

c# - 如何在我的集成测试中使用 System.Net.Http.HttpClient 处理异步异常?

unit-testing - Selenium 测试运行后,Firefox 窗口不会关闭

c# - 在 C# 中用朴素的字符替换重音/变音字符

c# - 为 WPF DateTimePicker 验证设置区域性

c# - 在 IIS7 中以编程方式为虚拟目录启用 BITS 上传

.net - 如何检测驱动器中是否有软盘?

c# - 创建布局和逻辑 AutoCAD 插件对话框

python - 在运行测试之前更改 cwd