- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在尝试使用参数对方法进行基准测试。
[Benchmark]
public void ViewPlan(int x)
{
//code here
}
在使用 [Benchmark] 注释执行代码时,我得到了一个错误“基准方法 ViewPlan 的签名不正确。方法不应有任何参数”。所以我也尝试向该方法添加 [Arguments] 注释。引用链接:https://benchmarkdotnet.org/articles/samples/IntroArguments.html
[Benchmark]
[Arguments]
public void ViewPlan(int x)
{
//code here
}
在这个 [Arguments] 中,我们还需要指定方法的参数值。但是,调用该功能时会动态设置 x 的值。有没有办法在 [Arguments] 中动态传递参数值?我们还可以对静态方法进行基准测试吗?如果可以,那么怎么做?
最佳答案
我已经为你做了一个例子。看看它是否符合您的需求。
public class IntroSetupCleanupIteration
{
private int rowCount;
private IEnumrable<object> innerSource;
public IEnumerable<object> Source => this.innerSource;
[IterationSetup]
public void IterationSetup()
{
// retrieve data or setup your grid row count for each iteration
this.InitSource(42);
}
[GlobalSetup]
public void GlobalSetup()
{
// retrieve data or setup your grid row count for every iteration
this.InitSource(42);
}
[Benchmark]
[ArgumentsSource(nameof(Source))]
public void ViewPlan(int x)
{
// code here
}
private void InitSource(int rowCount)
{
this.innerSource = Enumerable.Range(0,rowCount).Select(t=> (object)t).ToArray(); // you can also shuffle it
}
}
我不知道你是如何设置你的数据的。对于每次迭代或每次迭代一次,所以我包括这两种设置。
关于c# - 我们如何在 C# 中为 BenchmarkDotNet 的 [Arguments] 标记传递动态参数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58972840/
介绍 今天介绍一个非常强大的基于.Net 的基准测试工具 BenchmarkDotNet 。 BenchmarkDotNet 已经被14300多个项目采用,包括非常多的知名开源项
我正在尝试运行此代码: public class Parsing { private const string Url ="blabla"; private static HttpCl
我已经用一个简单的测试类试用了 BenchmarkDotNet public class BenchTest { bool First = false; [Benchmark]
我有史以来第一次关注 BenchmarkDotNet 和一般基准测试。由于我们工作笔记本电脑上的防病毒限制,我似乎无法使用普通的 BenchmarkRunner 运行基准测试,因此我尝试使用 InPr
我正在对一些 .net 框架的东西进行基准测试,我正在使用 .net 框架、C# 和 BenchmarkDotNet 我想做的是;我正在编写大量基准测试,我只对报告的摘要部分感兴趣。如何配置 Benc
我正在编写我过去用 native 代码编写的程序的 F# 端口。我用了BenchmarkDotNet来衡量其性能。我还在应用程序的输出目录中放置了一个 native EXE。 我将我的 native
我正在使用 BenchmarkDotNet用于性能检查的库,我想注入(inject) 使用基准类时的参数。像这样的东西: public class Program { public stati
我在我的项目(web api,VS2019)和 XUnit 2.4.1 中使用 .NET Core 3.1。最近我正在考虑添加一些性能测试,我遇到了这个库 - BenchmarkDotNet .由于我
因此,我的 Main() 方法中有以下代码 for (int x = 0; x (); for (int j = 0; j < 1250; j++) dict.Add(j, $
我想创建一个基准测试来显示已初始化和未初始化的 .net 列表之间的性能差异,但我遇到了一些麻烦。我尝试了不同的方法来编写这个基准测试,但没有成功。每次运行代码时,我都会得到以下信息: System.
我正在测试基准库以衡量代码的性能。我正在阅读文档。 我不知道如何打印出基准测试结果。我有一个名为 user 的类,我想标记以下方法。 [Benchmark] public bool FollowerA
我正在尝试使用参数对方法进行基准测试。 [Benchmark] public void ViewPlan(int x) { //code here } 在使用 [Benchmark] 注释执行代码时,
我正在尝试使用参数对方法进行基准测试。 [Benchmark] public void ViewPlan(int x) { //code here } 在使用 [Benchmark] 注释执行代码时,
当为我的项目中的方法运行 BenchmarkDotNet 时,我在屏幕上打印了一些“错误的程序集绑定(bind)重定向”警告/错误消息。这让我有点困惑,因为我认为程序集绑定(bind)重定向是一个 .
第一张图片中使用的内存工具来自 Rider。据我所知,它显示了对托管堆的分配。第二张图片显示了 BenchmarkDotNet 的结果。 为什么 Rider 显示已进行分配,但 BenchmarkDo
我正在尝试将 BenchmarkDotNet 包安装到 Visual Studio 2012 ultimate 上一个全新的空白控制台项目中,但我收到此错误日志: PM> Install-Packag
我是一名优秀的程序员,十分优秀!