Java MicroBenchmarking Harness игнорирует параметры теста

Я использую OpenJDK JMH и хотя я пытался аннотировать и метод, и класс, который его запускает, он все равно будет работать со значениями по умолчанию. Я запускаю этот тест из папки тестов, используя jUnit.

public class BenchmarkRunner {

    @Test
    public static void main(String argv[]) throws Exception
    {
        org.openjdk.jmh.Main.main(argv);
    }
}

Неважно, если я аннотирую класс или метод:

@Warmup(iterations = 5, timeUnit = TimeUnit.MILLISECONDS)
@Measurement(iterations = 5, timeUnit = TimeUnit.MILLISECONDS)
@Fork(value = 3)
@BenchmarkMode(Mode.AverageTime)
public class MyBenchmark {

    @Benchmark
    public void testMethod()
    {
        testHashFinderMethod_1();
    }


    private void testHashFinderMethod_1()
    {
        HashFinder hashFinder_1 = new HashFinder("TeSt",'A','z');
        hashFinder_1.findHash("");
    }
}

1 ответ

Проблема была в том, что я запускал тест от tests папка с использованием jUnit @test аннотаций. Переместил его и запустил из src папка и все работает.

Другие вопросы по тегам