51Testing软件测试论坛

标题: SmartBear SoapUI Pro入门教程--第一次功能测试(三) [打印本页]

作者: 悠悠小仙仙    时间: 2019-2-11 15:56
标题: SmartBear SoapUI Pro入门教程--第一次功能测试(三)
本帖最后由 悠悠小仙仙 于 2019-2-11 15:58 编辑

SoapUI Pro拥有许多其他web服务测试工具所不具备的高级技术和功能。对于REST、SOAP以及其他流行的API和物联网协议,它提供了业界最全面的功能测试功能。通过易用的图形界面和企业级功能,SoapUI Pro允许你快速创建和执行自动功能测试。在单一环境下,SoapUI Pro提供了完整的测试覆盖,支持所有的标准协议和技术。本文旨在引导新用户开始第一次功能测试,供大家学习讨论。
[attach]121613[/attach]

断言是应用于测试结果的验证规则,用于检查目标Web服务的执行方式。在SoapUI测试中,使用断言来验证代码和主体中的各个值、请求执行时间以及执行其他检查。测试运行器在测试步骤结束后运行断言。

示例一、SLA断言

创建一个断言检查测试的Web服务是否在预定义的时间限制内响应:

1.在SoapUI中,在Navigator面板中选择GET Request,然后单击Add Assertion:

[attach]121614[/attach]


2.在对话框中,选择左侧的SLA类别,然后选择右侧的Response SLA,并单击Add:

[attach]121615[/attach]


3.在Add Assertion对话框中单击Add后,ReadyAPI将显示可以配置断言参数的对话框。对于不同的断言,此对话框的外观不同。下图显示了它如何查找响应SLA断言。

[attach]121616[/attach]

使用1000ms作为最大请求响应时间,现在如果请求需要的时间超过指定的毫秒数,则会触发断言,测试将失败。如果测试的时间小于或等于指定值,检测则通过。


您可以在Assertions面板中找到添加的断言:

[attach]121617[/attach]


如果请求编辑器具有响应数据,将立即应用断言。

[attach]121618[/attach]


ReadyAPI每次获得更新的响应数据时都会重新应用断言。 在我们的示例中,断言因为请求的执行时间超过1秒而失败。要更改时间限制,请双击断言页面中的断言,然后在后续对话框中输入更大的值:

[attach]121619[/attach]

提示:您可以使用“New Functional Test wizard”向导将响应SLA和其他一些断言添加到请求中。


示例二、检查响应内容

接下来将介绍如何验证响应数据。示例响应主体具有JSON数据格式,因此我们将为JSON数据创建一个断言:


1.确保请求有响应。如果没有,请单击Send发送请求并获得响应。

2.在“Assertions”页面上,按图中所示创建另一个断言。在随后的对话框中,选择左侧的Property Content类别和右侧的JsonPath Match断言,然后单击Add:
[attach]121620[/attach]

3.在对话框中,您需要输入一个JSONPath表达式,该表达式将从响应正文中提取一些字段以及该字段的预期值:
[attach]121621[/attach]

您可以键入所需的表达式,也可以按图所示操作,然后在后续对话框中以可视方式选择值:
[attach]121622[/attach]

所述JSONPath表达字段包含选择器从电流响应数据中提取的值和预期结果:
[attach]121623[/attach]

4.单击“Save”存储更改。 由于我们有响应数据,因此将立即应用断言,您将在断言页面中看到其结果:
[attach]121624[/attach]
如果响应发生变化,则会触发断言,测试步骤将失败。

值得注意的是只有编辑器有一些响应数据时,所描述的Select节点命令才有效。也就是说,您需要先运行请求并收到响应。








欢迎光临 51Testing软件测试论坛 (http://bbs.51testing.com/) Powered by Discuz! X3.2