如果您运行testStep并查看断言。 SoapUI返回断言Green / Red以及添加“ - VALID”或“ - FAILED”
问题:有没有办法让捕获者获得完整的字符串? 名称+状态
即。 SOAP响应 - 有效 XPath匹配 - 有效 包含 - 有效 不包含 - 失败
目前我正在提取断言列表 - 但我希望额外的状态块与它一起使用。
谢谢你, 罗布
答案 0 :(得分:1)
要打印testSteps
内所有testCase
内的所有断言,您可以使用tearDown script
testCase
中的跟随groovy脚本,使用{{3}返回getAssertionList()
列表,然后使用TestAssertion
和label
属性对其进行迭代:
testRunner.testCase.testSteps.each{ name,props ->
log.info "Test step name: $name"
// check that the testStep class support assertions
// (for example groovy testStep doesn't)
if(props.metaClass.respondsTo(props, "getAssertionList")){
// get assertionList
props.getAssertionList().each{
log.info "$it.label - $it.status"
}
}
}
注意:并非所有类型的testStep都有断言(例如Groovy脚本testStep没有)所以在使用之前需要检查它getAssertionList()
)
如果你想从一个特定的testStep
获得所有断言,你可以在一个groovy脚本中使用相同的方法:
// get the testStep
def testStep = testRunner.testCase.getTestStepByName('Test Request')
// check that the testStep specific class support assertions
// (for example groovy testStep doesn't)
if(testStep.metaClass.respondsTo(testStep, "getAssertionList")){
// print assertion names an its status
testStep.getAssertionList().each{
log.info "$it.label - $it.status"
}
}
希望它有所帮助,