BenchmarkDotNet 允許透過設定去變更 Summary Table 的 Column。
內建可使用的 Column 有:
- NamespaceColumn
- MedianColumn
- MinColumn
- MaxColumn
- RankColumn
使用上只要透過 Attribue 掛上 benchmark 類別即可:
1 | using BenchmarkDotNet.Attributes.Columns; |
運行起來就會在 Summary Table 看到設定的欄位。
如果要加的欄位是未內建的,可透過 Config 與 TagColumn。像是這邊筆者想要加個 HashCode Column,其值為方法的 Hash 值,就可以像下面這樣撰寫:
1 | using BenchmarkDotNet.Attributes; |
程式運行結果如下:
不過這樣用 TagColumn 的撰寫方式在重用上比較不易,若有需要可進一步撰寫一個實作 IColumn 的自定義 Column 類別。像是下面這樣:
1 | using BenchmarkDotNet.Columns; |
有自定義的 Column 類別,使用上就只要建立實體後透過 Config 設定即可。
1 | … |