2017-05-30 11 views
2

springプロファイルを使用してgradleでテストを実行する必要があります。Springプロファイル(統合テスト)を使用してgradleタスクを実行する

gradle clean build 

私が追加したタスク:

task beforeTest() { 
    doLast { 
     System.setProperty("spring.profiles.active", "DEV") 
    } 
} 

test.dependsOn beforeTest 

そして、私のテスト定義は次のとおりです。

@RunWith(SpringRunner.class) 
@SpringBootTest 
@ActiveProfiles("TestProfile") 
public class SomeTest { 

は、しかし、この構造は私のために動作しません。

グレードランテスト。

答えて

2

私はランタイム/テストJVMでシステムプロパティを設定したいと思っていますが、ビルド時のJVM(つまり、Gradleデーモン)でシステムプロパティを間違って設定していると思います。あなたの試みで

test { 
    systemProperty 'spring.profiles.active', 'DEV' 
} 

...と別のノート:

Test.systemProperty(String, Object)

例えば参照してください。タスクにはdoFirstdoLastのメソッドがありますので、試していた作業に別のタスクは必要ありません。

+0

ありがとうございますが、それは私を助けません – yazabara

関連する問題