且构网

分享程序员开发的那些事...
且构网 - 分享程序员编程开发的那些事

你可以使用 Jenkins Pipeline 解析 TAP 格式吗?

更新时间:2023-11-09 21:45:16

@Grab 仅在您的 jenkins 可以访问互联网时才能工作

@Grab will work only if you jenkins has access to the internet

workspace/job_name/tap.groovy

@Grab(group='org.tap4j', module='tap4j', version='4.2.1')

import org.tap4j.consumer.TapConsumerFactory

def parse(def src){
    return TapConsumerFactory.makeTap13Consumer().load(src)
}

return this

workspace/job_name/test.tap

1..3
ok 1 - no error
not ok 2 - io error
ok 3 - no error

管道脚本

node{
    def tap = load 'tap.groovy'
    tap = tap.parse( readFile('test.tap') )
    echo  "Number of tests found : ${tap.getNumberOfTestResults()}"
    echo  "Test Set failed?      : ${tap.containsNotOk()}"
}

输出

Number of tests found : 3
Test Set failed?      : true

tap.parse()返回的对象:org.tap4j.model.TestSet