简介:在开发接口的时候每次验证接口是否正确都需要手动写测试DEMO来验证,使用SOAPUI可以大大减少测试时间。

目录

1.SOPUI介绍... 1

2.SOAPUI使用... 1

2.1新建SOAP项目... 1

2.2发送SOAP请求... 6

2.3创建测试用例... 8

2.4创建负载测试... 12

SOPUI介绍

soapUI是一个开源测试工具,通过soap/http来检查、调用、实现Web Service的功能/负载/符合性测试

下载地址:

公司服务器:\\10.5.11.15\软件发布区\工具软件\开发辅助工具\soapUI-x32-4.6.0.exe

官方下载地址:http://sourceforge.net/projects/soapui/files/

SOAPUI使用

新建SOAP项目

      • 1.

      • 2.

Project Name:SOAPUI项目名称默认为webservice名称,可以调整;

Intial WSDL:webservice协议文件地址,一定要带上?wsdl不然会报错;

Create Request:是否为每个接口创建一个空的请求;

Create TestSuite:是否为每个接口创建一个测试包;

TIP:

在创建SOAP项目的时候有时候会报错,以下总结了两个比较常见的问题

      • 问题1:JAVA虚拟机最大内存设置问题

解决方案:

找到软件安装目录,在bin目录下找到文件SoapUI-4.6.4.vmoptions

将修改此处即可,原来配置的是1000m,我修改为512m即可,需要改小,如果不行,继续改小点,不能小于上面的最小配置数值

      • 问题2:无法打开.asmx问题

同样打开编辑SoapUI-4.6.4.vmoptions,在最下面一行添加-Dfile.encoding=UTF8

      • 3.

Style:

Single TestCase with one Request for each Operation:为每个接口请求都创建一个测试用例;

Request Content:

Create new empty requests:创建一个空的请求

Operations:此处会将所有的webservice方法全部列出来,是否勾选只会影响到创建测试用例;

Gererate LoadTest:

Generates a default LoadTest for each created TestCase:为每个接口生成一个默认的负载测试

      • 4.

创建完毕之后在Projects中可以看到我们刚刚创建的SOAP项目,SOAP请求和单元测试都会生成两个版本,一个是SOAP1.1版本另外一个是SOAP1.2版本;

发送SOAP请求

可以通过右键菜单”New Request”来创建更多的SOAP请求

请求编辑器

      1. 顶部包含一组请求动作

      2. 左边是请求区域

      3. 右边是响应区域

SOAPUI默认生成出来的请求报文需要填入的值都是使用“?”占位的,只需将”?”替换成指定的内容即可

TIP:地址栏中的地址是可以调整的

创建测试用例

测试用例请求和发送SOAP请求几乎上是一样的,唯一不同的是在测试用例请求这个地方是可以新增断言的。

新增断言

Content:断言内容

Ignore Case:

Ignore case in comparison:忽略大小写

Regular Expression:

Use token as Regular Expression:使用正则表达式比配

绿色为断言成功,红色为断言失败

断言对测试来说是比较有用的,测试可以按照场景新增N个请求根据断言结果来判断测试结果

组合测试,可以按照接口执行的步骤组合请求

创建负载测试

在负载测试用例创建完成之后,还需要配置相应的负载策略,配置窗口如下图:

负载测试界面

Limit:表示负载测试要持续执行的时间,单位为秒;

Threads:配置负载测试所用的线程数,即一般性能测试中所说的并发数;

Test Delay:设置测试时线程的休眠时间,即在完成一次完整的用例执行后,开始下一次执行的,线程的休眠时间,以毫秒为单位;

Random:表示休眠时间会在“Test Delay”*(1-0.5)=100毫秒和“Test Delay”*(1+0.5)=300毫秒之间波动;

可以根据测试场景进行相应的修改。

配置完负载策略之后,点击执行测试,在图中,可以看到,测试关注的数据跟随着测试的进行而持续的发生变化,得到的数据有:响应时间、每秒吞吐量(tps)、错误数(err)

也可以通过点击按钮查看数据结果的整体走向图:

http://files.cnblogs.com/files/KingUp/SOAPUI.rar

SOAPUI使用的更多相关文章

  1. C# 用SoapUI调试WCF服务接口(WCF中包含用户名密码的验证)

    问题描述: 一般调试wcf程序可以直接建一个单元测试,直接调接口. 但是,这次,我还要测试在接口内的代码中看接收到的用户名密码是否正确,所以,单一的直接调用接口方法行不通, 然后就想办法通过soapU ...

  2. SOAPUI使用教程-REST功能测试

    当创造了SoapUI功能测试用例,常见的情况是,你调用一些REST资源和验证其响应检查返回正确的结果.这可以容易地实现: 添加一个REST请求到新的test step或现有的TestCase 添加断言 ...

  3. SOAPUI使用教程-REST请求工作

    双击一个REST请求在导航打开的REST请求编辑器窗口: 就像相应的SOAP请求编辑器,这个窗口有以下几部分组成: 工具栏在顶部有标准动作的和端口的下拉菜单轻松修改服务端口 请求编辑器左侧有相应编辑视 ...

  4. SOAPUI使用教程-REST源和方法

    1. 添加REST服务.源和方法 一个REST服务包含任意数量相应的路径的可用源. 资源本身可以有尽可能多的子资源;子资源路径和所有的父路径链接起来. 首先创建一个新的REST服务在您的项目. 在导航 ...

  5. SOAPUI使用教程-REST服务和WADL

    首先创建一个新的REST项目: 选择文件|新建项目REST从主菜单: 通常情况下,我们可能会只提供一个URI 点击导入消耗. 在新建项目消耗对话框: 点击浏览. 然后,我们可以浏览到该文件: 点击   ...

  6. SOAPUI使用教程-了解REST参数

    1.2.资源参数 在这一节中,我们更为详细的看看提供给你不同类型的REST参数.有五种类型的可用参数:QUERY, HEADER, TEMPLATE, MATRIX and PLAIN. 所有参数可以 ...

  7. SOAPUI使用教程-入门REST测试

    首先,通过选择文件菜单中的“新建REST项目”选项创建从文件菜单中一个新的REST项目: 指定服务端点场下谷歌地图API网址: http://maps.googleapis.com/maps/api/ ...

  8. SOAPUI使用教程-测试JDBC数据库

    soapUI中有除了开源版本的一些非常实用的功能: 使用在项目级配置的JDBC连接 使用向导创建复杂的查询. 结果显示XML输出视图(以及该使用向导在此视图中提供的XPath断言). 提供JDBC连接 ...

  9. SOAPUI使用教程-MockService脚本概述

    虽然静态MockOperation和MockResponse模型可以给你一定的灵活性,更多的动态行为添加到您的服务让您更模拟复杂的服务功能是很有用的.例如,你可能想: 从请求到响应传输值,修改它们的值 ...

  10. 接口测试SoapUI参数化

    上次和大家一起完成了soapui的参数之一properties,今天我们一起交流另外一种参数化的方法,跟着一起练习,不懂不要紧,练习多了就会慢慢懂的: 1.准备excle(目前soapui只支持xls ...

随机推荐

  1. swoole之memoryGlobal内存池分析

    内存池的作用: 直接使用系统调用malloc会有如下弊端: 频繁分配内存时会产生大量内存碎片 频繁分配内存增加系统调用开销 容易造成内存泄漏 内存池是预先申请一定数量的,大小相等的内存块作为预备使用: ...

  2. Bootstrap组件之输入框组

    .input-group--设置div为输入框组: .input-group-lg..input-group-sm..input-group-xs--改变输入框组的尺寸: .input-group-a ...

  3. 大海教你学手游2015CocosLua第一季_00课程介绍

    话说大盘从5100直掉到3500点,千仅仅股票跌幅超过20%,跌跌不休.散户.证监会.做空机构開始斗气地主来了: 散户:叫地主 空头:抢地主,3分 证监会:pass 空头:压死 证监会:不要 散户:不 ...

  4. jsp出现错误can not find the tag directory /web-inf/tags

    百度google了一大圈没找到中文答案,无奈之下硬着头皮看了一个英文答案http://stackoverflow.com/questions/11502703/eclipse-can-not-find ...

  5. PHP join() 函数

    PHP join() 函数 实例 把数组元素组合为一个字符串: <?php $arr = array('Hello','World!','I','love','Shanghai!'); echo ...

  6. PostgreSQL Replication之第七章 理解Linux高可用(6)

    7.6 PostgreSQL和高可用性 数据库是我们日常数字生活的一部分,并期望它们快速工作. 您浏览网上论坛吗?那个帖子在数据库中.您看医生吗?您的医疗记录在数据库中.您在网上购物吗?那个货物,您的 ...

  7. PostgreSQL Replication之第五章 设置同步复制(2)

    5.2 理解实际影响和性能 在本章中,我们已经讨论了实际影响以及性能影响.但是,有什么好的理论性的例子吗?让我们做一个简单的基准测试,看看复制是怎么做的.我们做这样的测试来为您显示各种耐久性的级别不只 ...

  8. js 字符串首字母转为大写 正则

    function replaceReg(str){ var reg = /\b(\w)|\s(\w)/g; str = str.toLowerCase(); return str.replace(re ...

  9. GoldenGate 1403错误解决方法

    OGG  oracle goldengate 1403错误解决方法 1. 错误描述WARNING OGG-01154 Oracle GoldenGate Delivery for Oracle, re ...

  10. JAVA程序类加载及其反射机制

    [IT168 技术]当调用java命令运行某个Java程序时,该命令将启动一条Java虚拟机进程,同一个JVM的所有线程,所有变量都处于同一进程里,它们都是用该JVM进程的内存区. 程序运行到最后正常 ...