SoapUI - 断言



断言可以理解为检查点或验证点。一旦请求发送到 Web 服务器,就会收到响应。需要验证响应中是否包含预期的数据。为了验证响应,SoapUI 具有断言功能。

注意事项

  • 断言用于验证测试步骤在执行过程中收到的消息。

  • 它将消息的一部分或整个消息与某个预期值进行比较。

  • 可以向测试步骤添加任意数量的断言,每个断言都验证响应消息的不同方面和内容。

  • 测试步骤执行后,所有断言都将应用于收到的响应,如果任何断言失败,则测试步骤在测试用例视图中标记为失败。

  • 失败的条目显示在测试执行日志中。

Execution Log

断言类型

SoapUI 支持响应中各种各样的断言。

以下是 SoapUI 支持的断言列表。

断言 描述
属性内容
包含 检查指定字符串是否存在。它也支持正则表达式。
不包含 检查指定字符串是否不存在。它也支持正则表达式。
XPath 匹配 使用 XPath 表达式选择目标节点及其值。将 XPath 表达式的结果与预期值进行比较。
XQuery 匹配 使用 XQuery 表达式从目标属性中选择内容。将 XQuery 表达式的结果与预期值进行比较。
合规性、状态、标准
HTTP 下载所有资源 下载 HTML 文档(图像、脚本等)引用的所有资源,并验证它们是否都可用。适用于包含 HTML 的任何属性。
无效 HTTP 状态码 检查目标测试步骤是否收到了 HTTP 结果,其状态码不在定义的代码列表中。适用于接收 HTTP 消息的任何测试步骤。
不是 SOAP 错误 验证最后接收的消息不是 SOAP 错误。适用于 SOAP 测试步骤。
架构合规性 验证最后接收的消息是否与关联的 WSDL 或 WADL 架构定义一致。适用于 SOAP 和 REST 测试步骤。架构定义 URL 支持属性扩展(例如 ${#System#my.wsdl.endpoint}/services/PortType?wsdl)。
SOAP 错误 验证最后接收的消息是否为 SOAP 错误。适用于 SOAP 测试步骤 SOAP 请求 - 验证最后接收的请求是否为有效的 SOAP 请求。仅适用于模拟响应测试步骤。
SOAP 响应 验证最后接收的响应是否为有效的 SOAP 响应。仅适用于 SOAP 测试请求步骤。
有效 HTTP 状态码 检查目标测试步骤是否收到了 HTTP 结果,其状态码在定义的代码列表中。适用于接收 HTTP 消息的任何测试步骤。
WS-Addressing 请求 验证最后接收的请求是否包含有效的 WS-Addressing 标头。仅适用于模拟响应测试步骤。
WS-Addressing 响应 验证最后接收的响应是否包含有效的 WS-Addressing 标头。仅适用于 SOAP 测试请求步骤。
WS-Security 状态 验证最后接收的消息是否包含有效的 WS-Security 标头。适用于 SOAP 测试步骤。
脚本
脚本断言 允许用户执行自定义脚本以执行用户定义的验证。仅适用于测试步骤(即不适用于属性)。
SLA
响应 SLA 验证最后接收的响应的响应时间是否在定义的限制范围内。适用于脚本测试步骤和发送请求并接收响应的测试步骤。
JMS
JMS 状态 验证目标测试步骤的 JMS 请求是否成功执行。适用于具有 JMS 端点的请求测试步骤。
JMS 超时 验证目标测试步骤的 JMS 语句是否未花费超过指定的时间。适用于具有 JMS 端点的请求测试步骤。
安全
敏感信息泄露 验证响应消息是否不会泄露有关目标系统的敏感信息。我们可以将此断言用于 REST、SOAP 和 HTTP 测试步骤。
JDBC
JDBC 状态 验证目标测试步骤的 JDBC 请求是否成功执行。仅适用于 JDBC 测试步骤。
JDBC 超时 验证目标测试步骤的 JDBC 语句是否未花费超过指定的时间。仅适用于 JDBC 测试步骤。
广告