JMH:将基准测试结果作为json对象返回

时间:2017-02-06 15:47:18

标签: java json benchmarking jmh

我正在为应用程序开发集成基准测试。我想用JMH作为我的框架。

如何以JSON对象的身份收到结果?

我知道我可以将它保存在一个包含以下运行选项的文件中:

    org.openjdk.jmh.runner.options.Options opt = new OptionsBuilder()
            .include(WorkerBenBenchmarkObject.class.getSimpleName())
            .shouldDoGC(true)
            .resultFormat(ResultFormatType.JSON)
            .result("benchmark-result/" + System.currentTimeMillis() + ".json")
            .addProfiler(StackProfiler.class)
            .jvmArgsAppend("-Djmh.stack.period=1")
            .warmupIterations(5)
            .measurementIterations(5)
            .forks(1)
            .build();

    new Runner(opt).run();

如何在不需要阅读文件的情况下收到此结果?

1 个答案:

答案 0 :(得分:2)

如果从命令行运行JMH,则有一个选项(-rf)来设置输出格式。

对于JSON输出:

dane.[IdTask]

获取其他格式的列表以及要选择的选项:

java -jar benchmarks.jar -rf json