簡體   English   中英

創建Gradle Test任務的副本

[英]Create a copy of Gradle Test task

我需要在本地和自動在TeamCity服務器上運行項目測試。

本地測試執行必須使用本地數據庫連接,並且在TeamCity上運行時,測試必須使用與數據庫的遠程連接。

因此,在這種情況下,我需要告訴我的測試,何時使用本地連接以及何時使用遠程並傳遞URL,用戶名和密碼。

告訴我,我決定使用java系統屬性。 我在Gradle中找到了內置的支持

systemProperty 'some.prop', 'value'

問題是,如何為本地測試運行創建不傳遞任何屬性的標准測試任務,以及如何在運行前設置系統屬性的自定義測試任務?

我嘗試了類似的東西

task teamCityTest(type : Test) {
    scanForTestClasses = false
    includes = ['**/*Test.class']
    systemProperty 'some.prop', 'value'
}

但是NPE失敗了,這意味着我做錯了。

這種方法很好(您可以使用Java插件的test任務在本地運行測試),但是您必須為teamCityTest配置其他屬性,例如classpath = configurations.testRuntime (甚至是classpath = test.classpath )。 有關完整示例,請參閱gradle-all發行samples/java/withIntegrationTests中的samples/java/withIntegrationTests

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM