JUnitBenchmark 介绍
如果你希望用 JUnit 来测试一些性能问题,那么 JUnitBenchmark 可以帮到你,主要特性:
- 记录执行时间
- 监控垃圾收集
- 测试热身
示例测试:
package org.javabenchmark; import com.carrotsearch.junitbenchmarks.AbstractBenchmark; import com.carrotsearch.junitbenchmarks.BenchmarkOptions; import javolution.text.TextBuilder; import org.junit.Test; /** * Benchmark for String concatenation. Compares StringBUilder (JDK) and * TextBuilder (Javolution). */ public class StringConcatenationBenchmark extends AbstractBenchmark { public static final long LOOPS_COUNT = 10000000; @Test @BenchmarkOptions(benchmarkRounds = 3, warmupRounds = 1) public void stringBuilderBenchmark() { StringBuilder builder = new StringBuilder(); for (long i = 0; i < LOOPS_COUNT; i++) { builder.append('i').append(i); } System.out.println(builder.toString().length()); } @Test @BenchmarkOptions(benchmarkRounds = 3, warmupRounds = 1) public void textBuilderBenchmark() { TextBuilder builder = new TextBuilder(); for (long i = 0; i < LOOPS_COUNT; i++) { builder.append('i').append(i); } System.out.println(builder.toString().length()); } }
JUnitBenchmark 官网
http://labs.carrotsearch.com/junit-benchmarks.html
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。