首页 > 代码库 > SOAPUI使用脚本进行断言

SOAPUI使用脚本进行断言

Script-Assertion允许对消息进行任意验证,包括消息内容,HTTP头等。Script-Assertion使用脚本语言(Groovy或JavaScript)编写。使用标准的“Add Assertion”按钮将Script-Assertion添加到TestStep中;

 

技术分享

这将显示以下配置对话框

技术分享

顶部区域是标准的soapUI脚本编辑器,具有相应的弹出菜单和操作。运行按钮针对上次接收到的响应执行断言脚本,并将结果显示在弹出窗口中。底部显示脚本中可用的日志变量的输出。

脚本中的messageExchange对象暴露了与最后一个请求/响应消息相关的一堆属性,我们来看一些简单的例子:

1. 在响应中验证HTTP头的内容

// check for the amazon id header assert messageExchange.responseHeaders["Server"] != null

2. 验证一定的响应时间

// check that response time is less than 400 ms assert messageExchange.timeTaken < 400

3. 验证响应中是否存在附件

// check that we received 2 attachments assert messageExchange.responseAttachments.length == 2

4. 验证响应中是否存在特定的XML元素

// check for RequestId element in response def holder = new XmlHolder( messageExchange.responseContentAsXml )  assert holder["//ns1:RequestId"] != null

这个最后一个例子在soapUI Pro中大大简化,它将一个相应的向导添加到Outline Editor中;

 

技术分享

例如,选择上面的sessionid节点将为您自动创建以下断言:

 

技术分享


SOAPUI使用脚本进行断言