2 回答

TA贡献1835条经验 获得超7个赞
你可以做
test {
[...]
def testFilter = findProperty('testFilter')
if (testFilter) {
filter {
includePatterns = testFilter.split(',')
}
}
[...]
}
并运行使用
gradle testLocal -PtestFilter=*AccountTest.canWithdrawMoney*

TA贡献1856条经验 获得超17个赞
感谢 lance-java 帮助我实现这一目标,但直到我将其放入任务doFirst中的块中后,我才能使他的解决方案发挥作用test。我还修改了它以适用于多个课程和测试。
对我有用的最终版本是:
test {
[...]
doFirst {
def testFilter = System.getProperty('testFilter')
if (testFilter) {
def testFilterParts = testFilter.split(',')
testFilterParts.each {
item ->
filter {
includeTestsMatching item
}
}
}
}
[...]
}
我在 Jenkins testFilter 参数中使用了与此过滤器等效的内容:
*TestClassA.methodA*,*TestClassB.methodB*,*TestClassC.methodC*
添加回答
举报