SoapUI
SoapUI是什么
soapui是一款开源测试工具,通过soap/http来检查、调用、实现Web Service的功能/负载/安全性测试。
这款工具既可作为一个单独的测试软件使用,也可以利用插件集成到Eclipse,maven2.X,NetBeans和intellij中使用。
soapui分为soapui pro(商业版)和soapui open source(开源版),soapui pro包括一切soapui的功能并增加了很多易用性功能。由于soapui是基于Java的,它可以在大多数操作系统上运行,包括Windows,Linux和Mac。
主要特点
1)开源工具,功能强大、界面简单
2)支持多种测试,如:功能测试、特负载测试、回归测试等
3)支持基于SOAP的Web服务,还支持REST风格的Web服务
SoapUI基础知识
测试用例层级
-
测试集(TestSuite):同一逻辑功能模块测试场景的集合,可以创建任意数量的测试集
-
测试用例(TestCase):测试服务的某个特定功能,可以组合不同的测试步骤完成该功能流程
-
测试步骤(TestStep):最小的单位。用来控制、执行测试步骤和验证被测试服务返回。属于SoapUl的核心部分,灵活使用测试步骤,可以提高测试效率和节省脚本维护成本。
测试框架
SoapUI操作技巧
断言操作
属性操作
SoapUI支持使用自定义属性(Property)在项目中存储和共享数据。Property可以被 Groovy Script,Property Transfer 或者Property-Expansion引用,目前所有的属性均被处理为字符串。
SoapUl允许在项目的各个层次中定义属性,常用的层次包括:Project,TestSuite,TestCase等。
-
Project级别的属性适用于整个项目,使用语法$
-
TestSuite级别的属性适用于整个测试集,使用语法$
-
TestCase级别的属性适用于整个测试用例,使用语法$
-
Property级别的属性适用于测试步骤,使用语法$
备注:Property级别的语法有些特别,Properties是测试步骤的名称,可以修改
数据库操作
TestStep中有个JDBC Request,可以连接数据库进行操作。
第一步:手动添加驱动程序,不同的数据库,驱动程序不一样,例如:
ORACLE ojdbc14.jar
MYSQL mysql-connector-java-5.1.7-bin.jar
POSTGRESQL postgresql-9.3-1103.jdbc4.jar
驱动要自己下载:https://jdbc.postgresql.org/download.html
下载对应的驱动程序放置在soapUI安装目录bin/ext文件夹下:C:\Program Files\SmartBear\SoapUl-5.4.0\bin\ext,重启SoapUl。
第二步:配置对应的数据库连接。
比如:postgresql数据库配置如下:
Driver:org.postgresql.Driver Connection String:jdbc:postgresql://192.168.1.193:5432/database?user=root&password=123456
其他数据的Driver和Connection String需要相应修改一下。
如MySQL:
Driver=com.mysql.jdbc.Driver Connection String=jdbc:mysql://
[host]:[port]/[database]?
[property][=value]
Groovy Script
Groovy是一种基于JVM(java虚拟机)的敏捷开发语言,能与java很好的结合,而且可以使用java编写的代码库。
◆集成所有已经存在的Java对象和类库
◆不需要类型说明
常见使用方法介绍:
①设置或读取环境属性
② Script Assertion
③解析响应文本
④TestStep流程控制
SoapUI与其他接口测试工具有什么不同
如postman、jmeter、fiddler
SoapUI可以做什么
单接口测试
MOCK测试
-
创建项目,按照报文约定组装请求报文,发送请求报文获得响应报文
-
创建mock service
-
按测试要求修改前面获得的响应报文,然后将相应报文
-
设置IP地址
-
启动mock service
- 在浏览器验证mock service是否正常
在浏览器直接访问,如果没有提示无法访问,如展示空白或者如下,代表服务没有问题
浏览器访问的地址如下:http://192.168.137.41:8099//mockRSDAServicesSoapBinding,观察设置IP地址的步骤,可以知道这个地址是怎么来的。
- 修改服务器配置报文
需要登陆到服务器,修改配置。
就是把原来服务器返回的响应,修改为从自己本地mock service返回相应。
1、确保模拟服务端已启动并可用,根据功能部署文档指引把模拟服务端url配置到功能服务的配置文件,启动功能服务,运行终端软件,即可验证接口异常效果。
2、切换接口异常情况修改报文后,需要重启模拟服务端,修改的报文才能生效。
- 最后在客户端操作,观察测试结果是否符合预期
Mock原理说明