在单个测试中执行多个断言 - soap ui

Execute multiple asserts in a single test - soap ui

我是 SoapUI 的新手。我有一个只有一个测试步骤的测试套件。我的测试步骤在 groovy 脚本中有两个断言。

assert id== '123' : "id value not valid"
assert no== '12' : "no not valid"

如果第一个断言失败,则测试停止并且不执行下一个断言。

有没有办法即使第一个断言失败,剩下的断言继续,在所有断言执行完后测试停止?

您有两个不同的问题!

首先,如果你有多个测试步骤,并且不想在第一个错误处停止,你可以在测试用例选项中关闭"Abort on Error"选项;默认情况下此选项处于启用状态。 documentation.

中对此进行了更多讨论

其次,如果您有 一个 脚本断言,如您所示,并且您想执行整个脚本,那么这是一个 Java 问题。根据定义,第一个失败的 assert 语句将停止脚本。您将需要以其他方式重写您的脚本。也许:

def errors = 0
if(id != '123') {
    log.error "id value not valid"
    errors++
}
if(no != '12') {
    log.error "no not valid"
    errors++
}
assert errors == 0