soapui知识分享
1、soapui简介
SoapUi是一个开源测试工具,通过soap/http来检查、调用、实现Web Service的功能/负载/符合性测试(自动化)。该工具既可作为一个单独的测试软件使用,也可以利用插件集成到Eclipse、maven2.X、Netbeans中使用。
SoapUi是一个自由和开放源码的跨平台功能测试解决方案。通过一个易于使用的图形界面和企业级功能,可以轻松、快速创建和执行自动化功能、回归、和负载测试。在一个测试环境,SoapUi提供完整的测试覆盖,并支持所有的标准协议和技术。
2、安装使用
安装包地址:https://pan.baidu.com/s/1AjssnPg9v92vcqv--iwiDQ
默认安装路径,一直下一步就OJBK
3、打开使用(SOAP)
SoapUI可以进行SOAP和REST协议类型的请求。(SOAP和REST的区别自行百度)
基于基础平台的MemberService进行SOAP协议的接口测试的使用流程
步骤一:
进入SoapUI的首页,点击左上角的file——New SOAP Project,弹出添加框
Project Name:项目的名称,自定义
Initial WSDL:SOAP协议封装的的地址。举个栗子:测试环境的MemberService接口调试地址为:http://XX.0.31.XXX:8031/memberservice.svc
我们需要用wsdl来调用封装里面的接口内容,所以在这里应该是http://XX.0.31.XXX:8031/memberservice.svc?wsdl
步骤二:
点击OK后,会把封装内的接口读取出来
选中某个接口点击旁边的+号
双击Request,进入请求页面
步骤三:
这里是XML格式,由于SOAP协议的特性,这里是固定的参数格式
填入参数点击左上角的开始按钮进行参数请求,成功后会返回请求结果
相关的请求日志在下方的log工具栏可以查看
如果我们一个接口需要有多个不同参数的请求时,我们可以右键接口名字,选择NEW Request
新的request会加载出默认的格式;
不同的request可以进行不同的命名,以便测试过程中进行区分
4、REST请求
新建REST-Project
file-New REST Project
输入请求地址后
进入参数填写页面
以接口CheckPriceAndCount为例进行接口测试
在Project中添加New REST Service from URL
输入测试环境的URL
XXX.0.31.XXX:801/api/CheckPriceAndCount?TokenID=cXVuYXJ8OWF3cXF2VWh2WEFnZG8
修改接口请求类型为post(程序默认为get)
输入参数,点击请求
查看返回参数
同个接口下可以添加多个request
接口自动化
在soapui中的接口自动化,本期主要讲测试集合的新增,后续会进行利用变量将参数进行调用;
1、创建测试集合
选中某个需要创建测试集合的request,右键选择Add to TestCase
这里可以选择将该request添加到现有的测试集合、测试集合中新的测试用例和创建一个新的测试集合;
这里我们先创建一个新的测试集合
输入测试集合的名称
然后再进行测试用例的命名
然后进行测试用例里的请求进行命名,其他默认勾选
性能测试
介绍几种策略
1。简单的策略——基线,负载和浸泡测试
简单的策略运行指定的线程数与指定的各运行模拟之间的延迟对服务器的“呼吸空间”。例如如果你想运行功能测试与10秒延迟10个线程,线程设置为10,推迟到10000年,随机延迟的多少你想随机化(即设置0.5将导致延误5至10秒)。当创建一个新的LoadTest这是默认策略和设置在一个相对较低的负载与1000毫秒的延迟(5个线程)。
简单的基准测试的策略是完美的。用它来维护您的服务的基本性能和验证没有线程或资源锁定问题。增加线程的数量,当你想要做更复杂的负载测试或使用长期浸泡测试策略。
因为它并不意味着把你的服务他们的膝盖,这样的设置可以用于连续负载测试,以确保您的服务执行如预期温和负荷;建立一个基线测试,没有延迟的随机化,添加LoadTest断言作为安全网,意想不到的结果和自动执行命令行LoadTest跑步者或maven插件。
2、可变负荷策略
有几个策略,可用于不同负载(线程)的数量随着时间的推移,每个模拟一种不同的行为。他们可以为恢复和压力测试是有用的,但是,正如对基线测试,结合自己或与其他策略。让我们来快速浏览:
方差策略——这不同线程的数量随着时间的“锯齿”庄园配置;间隔设置为所需的值和方差的线程的数量应该减少和增加多少。例如如果我们从20线程,设置间隔60和方差0.5,线程的数量将从20增加到36在第一15秒,然后减少回20,继续到4线程45秒后,最后返回到初始值后60秒。在统计图中我们很容易遵循这个方差:
破裂的策略——这种策略是专门为恢复测试和方差推向了极端,它并没有配置延迟,然后运行的配置数量的线程“破裂时间”和回到睡眠。这里你可以(而且应该)的线程数量设置为高价值(20 +)来模拟冲击的交通在短时间间隔内,然后用一个标准衡量系统的恢复基线LoadTest包含基本绩效断言。让我们试试这个破裂延迟和60秒10秒的持续时间;
线程可以线性策略改变从一个水平到另一个线程的数量
LoadTest的运行。它的主要功能是作为一种手段来确定某些统计数据变化或事件发生时的水平,例如找到ThreadCount的最大的TPSBPS可以实现或发现ThreadCount功能测试的错误开始发生。设置开始和结束线程值(例如5
- 50)并设置持续时间相对较长时间(我每个线程使用至少30秒值,在本例中,将1350秒)获得准确的测量数据
创建自动化测试之后,可以右键点击Load Tests
输入名称后生成性能测试集
可以设置不同测试策略和测试时间
可以打开不同接口和不同指标的曲线图