According to the documentation BenchmarkDotnet's Default exporters are: csv, html and markdown.
I can see how to add my own exporter, but I can see how I can get rid of the default exporters.
If there is no way to do this, is the order that the exporters are run in guaranteed? In other words, will my additional exporter be guaranteed to run after the default ones?
If you don't want the default settings, you need to create an empty config and add everything you need in an explicit way. The minimal config that prints results to the console:
I've created a PR that is going to make it easier in the next release: https://github.com/dotnet/BenchmarkDotNet/pull/1582
Please feel free to create an issue in the BDN repo and suggest a new API|solution if you find the current solution too complex.
It's guaranteed to be sorted by the dependencies requirements:
https://github.com/dotnet/BenchmarkDotNet/blob/81c234d11cab1b3beb0e60cf0f5c4c92e60a41e6/src/BenchmarkDotNet/Configs/ImmutableConfigBuilder.cs#L117
An example is the
RPlot
exporter that relies on having theCSV
exporter doing it's job first:https://github.com/dotnet/BenchmarkDotNet/blob/27887d4b612312c74c63c0c3220351f8db8e81e4/src/BenchmarkDotNet/Exporters/RPlotExporter.cs#L22-L26