を使用して特定のテストクラスを実行できることを知ってい-Dtest=MyTest
ます。しかし、そのクラス内で特定のテストを実行することは可能ですか?
つまり、とをMyTest
定義する場合、実行する必要があることだけを指定する方法はありますか?testFoo()
testBar()
testfoo()
IDEでこれを行うのは簡単ですが、別のサーバーのコマンドラインでテストを実行する必要がある場合があります。
を使用して特定のテストクラスを実行できることを知ってい-Dtest=MyTest
ます。しかし、そのクラス内で特定のテストを実行することは可能ですか?
つまり、とをMyTest
定義する場合、実行する必要があることだけを指定する方法はありますか?testFoo()
testBar()
testfoo()
IDEでこれを行うのは簡単ですが、別のサーバーのコマンドラインでテストを実行する必要がある場合があります。
MavenSurefireプラグインを使用した単一のテストの実行から
バージョン2.7.3では、単一のテストクラスで実行できるテストはn個のみです。
注:junit4.xおよびTestNGでサポートされています。
次の構文を使用する必要があります
mvn -Dtest=TestCircle#mytest test
あなたもパターンを使うことができます
mvn -Dtest=TestCircle#test* test
Surefire2.8以降で利用可能になります。SUREFIRE-577を参照してください。
利用できるとは思わないでください。いくつかのシステムプロパティに合格し、プロパティ値に基づくテストの実行を無視することで、この問題を回避できます。しかし、それは大きな付加価値を追加するようには見えません。追加機能を提供するTestNGもあります。
http://maven.apache.org/plugins/maven-surefire-plugin/examples/testng.html
一度に1つのテストを実行するには、mvntestを実行します
mvn -Dtest=MyUnitlTest test
一度に1つのテストと、そこから特定のメソッドを実行するには、次のようにします。
mvn -Dtest=MyUnitTest#method test
ここで、MyUnitTestはテストの名前であり、#methodはメソッドの名前です。
surefireを使用してテストを実行します。
mvn surefire:test