[英]Gradle run TestNG suites in parallel
我有一組定義測試套件的 TestNG xml 文件。 我試圖弄清楚如何使用 gradle 並行運行所有套件。 Essentially looking for the equivalent of running java org.testng.TestNG -suitethreadpoolsize 3 testng1.xml testng2.xml testng3.xml
. 另請注意,在套件中,測試也在那里並行運行。 這可能嗎?
你可以試試這個(假設 TestNG xmls 放在src/test/resources
中):
dependencies {
// your other dependencies
testImplementation 'org.testng:testng:7.4.0'
}
test {
useTestNG() {
scanForTestClasses = false
maxParallelForks = Runtime.runtime.availableProcessors().intdiv(2) ?: 1
suites ('src/test/resources/testng1.xml','src/test/resources/testng2.xml', 'src/test/resources/testng3.xml')
}
}
它將基於 testng xml 配置在並行線程中運行所有測試,但總並發線程數受maxParallelForks
限制。
請注意,所有測試仍然在單獨的線程中執行,而不是在單獨的進程中,因此例如所有 static 變量等將被共享。 至少我在實驗中發現了這種行為。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.