Just released version 1.0.4 of Pro.NBench.xUnit, unit tests for performance benchmarks, targeting .Net Standard 1.6 or greater.
It's a project to allow NBench (from the people that wrote Akka.Net) tests to be discovered, executed, reported, and debugged using xUnit.
Supports wrapping NBench in both xUnit Facts, and most importantly, Theories, to allow multiple parameters / iterations to be tested. This is achieved via [NBenchFact] or [NBenchTheory] custom attributes.
Internally, I have used IL code emitting to handle the 0-n parameters of test methods, and then create a DynamicMethodDelegate to invoke these test methods, to reduce skewing test results due to additional overhead of invocation. To quote Microsoft, "Dynamic methods are the most efficient way to generate and execute small amounts of code."
This allows you to not only test business logic validity, but also set performance criteria as part of your test suite. Much simpler to use than microsoft.xunit.performance.
https://lnkd.in/ebWXBvs