版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、测试工具SoapUI介绍2022年7月27日SoapUI简介 SoapUI是一个开源测试工具,通过soap/http来检查、调用、实现Web Service的功能/负载/符合性测试。该工具既可作为一个单独的测试软件使用,也可利用插件集成到Eclipse,maven2.X,Netbeans 和intellij中使用。 SoapUI主要用其来查看web service提供的接口,以及返回的结果,以便进一步的利用,但是SoapUI的功能远不止这些,其可以对web service进行功能上和性能上的测试。SoapUI的层次结构SoapUI把 服务、资源及其操作组织为一个层次结构。如图 1所示,主要包括
2、如下层次: 项目定义:位于最上层 ,项目可以包含多个服务的定义 服务定义:服务其实是对多个 REST 资源的一个分组 资源定义:具体描述该资源的名称,URI, 参数等属性 操作请求定义:基于每个方法,可以有一个或多个请求操作,如 GetBookListRequest,这些请求操作才是真正被 soapUI 所调用执行的。每个请求可以设置非常丰富的信息,例如 Accept 类型,请求的 Header 信息,运行了该请求以后,就能以各种方式查看运行结果。但是这里还不能加入断言来验证结果 - 必须在建立测试用例以后才能使用。SoapUI工具界面SoapUI 安装SoapUI 的安装1、SoapUI 基
3、于Java开发,支持多个平台,需要设置JAVA_HOME变量指向到相应的JRE目录中,同时修改PATH变量,将JRE1.6的bin目录添加进去。2、直接双击已成功下载的EXE程序,即可开始安装过程。SoapUI的使用1、先从创建项目开始,菜单文件创建项目:说明:Create sample requests for all operations?:为每个接口创建一个请求的例子Creates a TestSuite for the imported WSDL or WADL:为WSDL 或WADL 创建一个测试包Create a Web Service Simulation of the impo
4、rted WSDL:为WSDL创建一个模拟的服务端Initial WSDL/WADL:指定一个WSDL/WADL的路径,可以是本地或网络URL。2、然后点击 OK 到下一步生成初始的测试用例:SoapUI的使用说明:One TestCase for each Operation:每个接口创建一个用例 Single TestCase with one Request for each Operation:创建一个用例包含每个接口对应的请求Use existing Requests in Interface:使用已有的请求Create new empty requests:创建一个空的请求Gene
5、rates a default LoadTest for each created TeseCase:每个用例生成一个负责测试3、确定后进入下一步,生成MockService。SoapUI的使用Path 是生成的本地服务路径,Port是端口。Starts the MockService immediately 选项可选可不选。完成之后会在左边的树形结构中生成3部分:服务的集合 创建项目的时候我们选择了Create sample requests for all operations,所以每个接口都会自动创建一个请求,双击它就可以打开编辑面板,左边是请求内容,右边是响应内容。 把每个节点的“?”
6、替换成需要的内容,点击绿色的箭头发送就可以了。右边的内容就是服务器返回的结果,同时可以看到系统后台有相同的日志显示。服务的集合发送后返回的内容:TestSuite 测试用例的集合 TestSuite 是测试用例的集合,且里面每个测试用例包含测试步骤和负载测试。负载测试可以测试响应时间,统计测试结果。 在创建时已经自动给每个接口生成了一个发送请求的测试步骤,如图,同样,初始的节点内容是“?”,要修改。除了这个步骤,还可以加入其它步骤,它提供了几种用例步骤,包括,如右图:TestSuite 测试用例的集合简单说明一下其中几种步骤:Test Request:发送一个soap请求Groovy Scri
7、pt:用Groovy脚本定义的步骤。Groovy 是一种脚本语言,语法跟java类似。Properties:定义变量/属性Property Transfer:传值。可以把指定的属性的值传给另一个属性,也可以给请求中节点赋值。Conditional Goto:跳转,符合一定条件就跳到第N步Delay:延迟,可以调整用例执行时间,模拟人工思考时间。Run TestCase:在用例中执行另一个用例。TestSuite 测试用例的集合断言断言,也就是检查点。在创建测试用例完,一般都会创建断言,来判断接口的响应结果的正确性。在工具右下方,点击下面的Assertions 或上方的 按钮可以添加断言。Soa
8、pUI定义了多种断言类型简单说明其中几种:Not SOAP Fault:不是“失败响应”。SOAP Response:是一个SOAP 响应。Contains:响应内容包含的文本。XPath Match:指定XML节点的内容。SOAP Fault:是一个“失败响应”。Not Contains:响应内容不包括哪些文本。TestSuite 测试用例的集合批量运行测试用例双击TestSuite 会弹出运行面板,将会列出所有测试用例。如:TestSuite 测试用例的集合点击绿色箭头就会顺序执行。点击下面的TestSuite Log 按钮可以查看执行日志,可以看到每一步骤的执行情况。批量运行测试用例,就
9、可以对Webservice接口进行简单的自动化测试设置虚拟的服务端 这部分是设置虚拟的服务端,它会在本机启动一个虚拟的服务,返回指定的响应内容。当服务端还没开发完,或者条件不允许与其他系统一起调试时,这个功能便于在开发完成前就可以把测试用例准备好。下图所示,recharge接口下面建了3个response。右键单击对应的接口,新建一个response。设置虚拟的服务端 右边的内容是自动生成的,只要节点的“?”替换成实际需要的内容即可。 也可以创建一个“失败响应”,点击这个按钮 ,就会生成一个默认格式的失败响应,与实际系统返回的格式不一样,我们把已有的失败响应内容复制上去即可。 内容填写好之后,
10、可以把响应与请求关联起来。点击 ,选择一个已有请求或新建一个,如下图。设置虚拟的服务端 然后启动MockService,运行一下请求,就会返回刚刚设置的response。但要注意,要把请求响应的服务地址改为本机的虚拟地址,如下图 要选择图中的灰色的那个,前面部分是本机名称。 启动MockService:右键单击ServiceForRMPSoapBinding MockService,选择restart即可,会看到 这个绿色的小图标 在闪,表示正在运行。性能测试 性能测试在 soapUI 中称为 Load Test, 针对一个 soapUI 的 TestCase, 可以建立一个或多个 LoadT
11、est, 这些 LoadTest 会自动的 把 TestCase 中的所有步骤都添加到其中, 在运行的时候,soapUI 会自动的使用多个线程来运行这些 TestStep,同时也会监控 它们的运行时间, 例如最短时间,最长时间,平均时间等等。这样用户能够很直观的看到 REST 服务的响应时间,从而对性能进行调优。建立 LoadTest 非常简单,只需要在“Load Tests”上点击右键, 选择New LoadTest, 然后输入名称即可,下图是一个针对 GetBookList 的 性能测试, 可以看到有两个 TestStep : GetBookList_xml 和GetBookList_json , 100 个线程并发执行, 时间限制是 60 秒。 最后的结果是,最短时间 4 毫秒,最长时间 1204 毫秒,平均时间 20.54 毫秒。性能测试性能测试还支持断言,用户可以对一个 TestStep 或 TestCase 设置运行时间要求,例如平均时间大于 2 秒就认为失败,点击左 图 中的 “LoadTest Assertions”就可以设置。 当然根据需要,用户也可以编写脚本来做一些准备工作,或者清除工作。 参见 图 8中的Setup Scri
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 技术进步与企业运营模式的协同创新
- 小学数学教学与游戏元素的巧妙结合
- 2024手机配件采购与分销协议范本版B版
- 2024版商用户外活动场地租赁协议细则版B版
- 嵌入式系统在物联网平台的角色与挑战
- 2024销售经理薪酬体系与绩效奖金合同范本3篇
- 2025年度生态旅游区模板工程劳务分包合同2篇
- 二零二五年度砖渣买卖合同with附加服务3篇
- 2025化工品采购合同
- 家庭教育与学前儿童的道德教育及自信心塑造
- DL-T5054-2016火力发电厂汽水管道设计规范
- 城市生命线安全风险综合监测预警平台解决方案
- 《户用光伏发电系统运行规程》
- 化验室年终总结及明年计划
- 昆明市2024届“三诊一模”(三统)高考模拟考试 语文试卷(含答案)
- 湖北省武汉市经济开发区(汉南区)2022-2023学年五年级上学期期末数学试卷
- 南海局势和国家安全
- (正式版)YBT 6173-2024 钢铁行业冲击负荷平抑用飞轮储能系统技术规范
- GT 42456-2023 工业自动化和控制系统信息安全 IACS组件的安全技术要求
- 绒毛下血肿保胎方案
- 五年级上册脱式计算练习300题及答案
评论
0/150
提交评论