2017-09-26 2 views
1

さまざまな理由で議論に値するわけではありませんが、私は非常に重要だと思っています - 私はソースを1つだけ設定したいと思います。 - しかし、私はどのようにgradleでそれを行うかを理解することはできません。gradleテストとmainは同じものを設定します

私が同じディレクトリにテストソースセットを向けると、2つのソースセットが同じルートを共有できないというエラーが表示されます。

「テスト」タスクにちょうどメインのソースセットを使用するよう指示する簡単な方法はありますか?

+0

を追加*非常に非正統です。テストでは、より機密性の高いものがアーティファクトに漏れる傾向がありますが、ソースコードとテストコードの両方を同時に公開することになります。あなたは何を達成しようとしていますか? – Makoto

+0

私たちは次のようにコードします: –

+0

私は次のように記述します:class Blah {public static class Tests {// tests of Blah ...} // blahのguts ...} - 多くの多くの理由から、 512文字には収まりません。あなたがこのスタイルに同意するかどうかにかかわらず、すべての* $ Tests.classをフィルタリングするのは簡単なので、特別なリリースはありません。私はそれをどうやって行うのか知りたいですか? –

答えて

0

私はここに予約をオフに行くことは、このアプローチするので、議論多少の価値があると推測だろう全く異なる道を行く、私は思ったより簡単であることが判明し、ちょうど新しいテストタスク

task mainTest(type: Test) { 
    description = "Runs tests embedded in the code" 
    testClassesDir = sourceSets.main.output.classesDir 
    classpath = sourceSets.main.runtimeClasspath 
    binResultsDir=file("$buildDir/main-test-results") 
    reports { 
     html.destination = "$buildDir/reports/main" 
     junitXml.destination="$buildDir/reports/main" 
    }  
} 

check.dependsOn mainTest; 
関連する問題