本帖最后由 悠悠小仙仙 于 2019-2-11 15:58 编辑
SoapUI Pro拥有许多其他web服务测试工具所不具备的高级技术和功能。对于REST、SOAP以及其他流行的API和物联网协议,它提供了业界最全面的功能测试功能。通过易用的图形界面和企业级功能,SoapUI Pro允许你快速创建和执行自动功能测试。在单一环境下,SoapUI Pro提供了完整的测试覆盖,支持所有的标准协议和技术。本文旨在引导新用户开始第一次功能测试,供大家学习讨论。
断言是应用于测试结果的验证规则,用于检查目标Web服务的执行方式。在SoapUI测试中,使用断言来验证代码和主体中的各个值、请求执行时间以及执行其他检查。测试运行器在测试步骤结束后运行断言。 示例一、SLA断言创建一个断言检查测试的Web服务是否在预定义的时间限制内响应: 1.在SoapUI中,在Navigator面板中选择GET Request,然后单击Add Assertion:
2.在对话框中,选择左侧的SLA类别,然后选择右侧的Response SLA,并单击Add:
3.在Add Assertion对话框中单击Add后,ReadyAPI将显示可以配置断言参数的对话框。对于不同的断言,此对话框的外观不同。下图显示了它如何查找响应SLA断言。 使用1000ms作为最大请求响应时间,现在如果请求需要的时间超过指定的毫秒数,则会触发断言,测试将失败。如果测试的时间小于或等于指定值,检测则通过。
您可以在Assertions面板中找到添加的断言:
如果请求编辑器具有响应数据,将立即应用断言。
ReadyAPI每次获得更新的响应数据时都会重新应用断言。 在我们的示例中,断言因为请求的执行时间超过1秒而失败。要更改时间限制,请双击断言页面中的断言,然后在后续对话框中输入更大的值: 提示:您可以使用“New Functional Test wizard”向导将响应SLA和其他一些断言添加到请求中。 示例二、检查响应内容接下来将介绍如何验证响应数据。示例响应主体具有JSON数据格式,因此我们将为JSON数据创建一个断言:
1.确保请求有响应。如果没有,请单击Send发送请求并获得响应。
2.在“Assertions”页面上,按图中所示创建另一个断言。在随后的对话框中,选择左侧的Property Content类别和右侧的JsonPath Match断言,然后单击Add:
3.在对话框中,您需要输入一个JSONPath表达式,该表达式将从响应正文中提取一些字段以及该字段的预期值:
您可以键入所需的表达式,也可以按图所示操作,然后在后续对话框中以可视方式选择值:
所述JSONPath表达字段包含选择器从电流响应数据中提取的值和预期结果:
4.单击“Save”存储更改。 由于我们有响应数据,因此将立即应用断言,您将在断言页面中看到其结果:
如果响应发生变化,则会触发断言,测试步骤将失败。
值得注意的是只有编辑器有一些响应数据时,所描述的Select节点命令才有效。也就是说,您需要先运行请求并收到响应。
|