2017-12-12 12 views
0

OpenJDK JMHを使用していますが、メソッドとそれを実行するクラスの注釈付けを試しましたが、デフォルトで実行されます。私はjUnitを使ってテストフォルダからこのベンチマークを実行しています。ベンチマークオプションを無視したJava MicroBenchmarkingハーネス

public class BenchmarkRunner { 

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

私はクラスやメソッドに注釈を付けるかどうかは問題ではdoesntの:

@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(""); 
    } 
} 

答えて

0

問題は、私はJUnitの@testアノテーションを使用testsフォルダからベンチマークを実行していたということでした。それを移動してsrcフォルダから実行しても動作します。

関連する問題