第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

如何在 Jenkins 上的 Gradle 構(gòu)建中過濾測試而無需提交?

如何在 Jenkins 上的 Gradle 構(gòu)建中過濾測試而無需提交?

德瑪西亞99 2023-09-13 17:59:30
我有一個 Gradle 構(gòu)建,可以在 Jenkins 上運行一套 Java Selenium 測試。由于計時可能會導(dǎo)致 Selenium 測試失敗,因此我會重新運行一兩次失敗。為此,我使用 Gradle 的測試過濾機制,例如:test {    [...]    filter {        includeTestsMatching "*AccountTest.canWithdrawMoney*"    }    [...]}但這意味著我必須使用過濾器進行 Git 提交。理論上我也可以使用這樣的命令行過濾器:gradle test --tests "*AccountTest.canWithdrawMoney*"問題是我不打電話gradle test來運行測試。我調(diào)用我自己的任務(wù)gradle testLocal或gradle testServer,具體取決于我是在本地 PC 還是 Jenkins 服務(wù)器上運行測試,以及相應(yīng)的任務(wù)調(diào)用test。(Jenkins 服務(wù)器必須執(zhí)行額外的操作,例如下載并啟動我們的產(chǎn)品;我已經(jīng)在本地運行它了。)如果我嘗試...gradle testLocal --tests "*AccountTest.canWithdrawMoney*"...然后失敗了...未知的命令行選項“--tests”。...大概是因為testLocal和testServer不是(類型:測試)任務(wù)(我也不希望它們成為)。我很高興讓測試過濾器成為 Jenkins 構(gòu)建參數(shù),因為構(gòu)建已經(jīng)參數(shù)化,但我無法找到將過濾器獲取到 Gradle 的方法。那么:鑒于此設(shè)置,是否有一種更簡單的方法可以將測試過濾器傳遞到 Gradle,而不需要我將過濾器添加為 Git 提交?
查看完整描述

2 回答

?
qq_花開花謝_0

TA貢獻(xiàn)1835條經(jīng)驗 獲得超7個贊

你可以做


test {

    [...]

        def testFilter = findProperty('testFilter')

        if (testFilter) {

            filter {

               includePatterns = testFilter.split(',')

            } 

        } 

    [...]

}

并運行使用


gradle testLocal -PtestFilter=*AccountTest.canWithdrawMoney*


查看完整回答
反對 回復(fù) 2023-09-13
?
慕慕森

TA貢獻(xiàn)1856條經(jīng)驗 獲得超17個贊

感謝 lance-java 幫助我實現(xiàn)這一目標(biāo),但直到我將其放入任務(wù)doFirst中的塊中后,我才能使他的解決方案發(fā)揮作用test。我還修改了它以適用于多個課程和測試。


對我有用的最終版本是:


test {

    [...]

    doFirst {

        def testFilter = System.getProperty('testFilter')

        if (testFilter) {

            def testFilterParts = testFilter.split(',')

            testFilterParts.each {

                item ->

                    filter {

                        includeTestsMatching item

                    }

            }

        }

    }

    [...]

}

我在 Jenkins testFilter 參數(shù)中使用了與此過濾器等效的內(nèi)容:


*TestClassA.methodA*,*TestClassB.methodB*,*TestClassC.methodC*


查看完整回答
反對 回復(fù) 2023-09-13
  • 2 回答
  • 0 關(guān)注
  • 110 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號