私はJavaアプリケーションでGradleビルドを使用しています。私のプロジェクトには、弾性サーチ法があります。続いて、私はそれがテストを実行し、myproject-V.4.0.0.jar
を作成しgradle build
を与えるとき、私のgradle.build私のテストをアプリケーションjarに含める方法
jar {
baseName = 'myproject'
version = 'V.4.0.0'
manifest {
attributes 'Main-Class': 'com.myapp.Application'
}
from {
configurations.compile.collect { it.isDirectory() ? it : zipTree(it) }
}
}
test {
systemProperties = System.properties
systemProperty 'tests.security.manager', 'false'
}
です。しかし、私が実行するとき
java -cp myproject-V.4.0.0.jar;junit-4.11.jar junit.textui.TestRunner com.myapp.test.testclassname
私はcom.myapplication.test.testclassnameの例外が見つかりませんでした。 myproject-V.4.0.0.jarを抽出しましたが、テストクラスが見つかりませんでした。
私の質問は、どのようにアプリケーションクラスにもテストクラスを含めることができますか?
私はなぜこれをやりたいのですか?あなたは通常、あなたのアプリケーションjarでテストを出荷したくないです。 – tddmonkey
@tddmonkey、はい、しかし、問題は私の統合テストが今すぐ実行されなければならないことです。それはPRDに配備されません。 PRDのために私はテストを含まずにクリーンなビルドを持っています。どのように私はテストで私のアプリケーションの1つのコピーを出荷する必要があります。 – Backtrack