soapUI系列之—-05 JDBC Request & Xpath Match
一、配置JDBC Connection String
1. 以Oracle为例,要使用JDBC数据库就要先下一个 oracle JDBC的驱动,下载成功后把它放到soapUI安装目录下的 bin/ext文件夹下;其他数据库类似

图1、JDBC configuration
其中
Driver:oracle.jdbc.driver.OracleDriver
Connection String:jdbc:oracle:thin:username/password@hostname.net:1521:ERVICENAME
mysql 配置如下:
Driver:com.mysql.jdbc.Driver ---->这里是mysql的驱动引用方式。
Connection String:jdbc:mysql://localhost:3306/apiauto?user=root&password=admin
连接字符串的组成方式如下:
jdbc:mysql://ip[数据库所在的服务器IP地址]:port[端口号]/database[数据库名称]?user=[这里填写登录数据库用户名]&password=[密码]
二、执行可变参数的SQL语句
参数列表中:设置name。并维护参数value
在SQL中使用的语法:字段前面需要加上冒号(:),详见下图

图二、设置sql参数
三、XPath断言设置
Xpath Match 配置对话框如下所示,该功能支持整段报文比对和节点比对:
对话框分为两个区域:上半部分指定要应用的XPath表达式(Xpath Expression),下半部分设置预期结果(Expected result)
Test: 用于测试比对结果
Allow Wildcards:允许使用通配符
Ignore namespace pre...:忽略前面的命名空间
Ignore XML Comments: 忽略备注
3.1 报文比对

图三、设置Xpath断言
3.2 节点比对

在上面我们选择了“Allow Wildcards”选项,并用‘*‘替换了期望结果值,这将导致SoopUI在断言结果时忽略结果内容值。
3.3 节点比对(带命名空间的xml的报文)

详细返回报文如下所示:
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
<soap:Body>
<ns2:uploadPolicyInfoResponse xmlns:ns2="http://server.webservice.aip.sinosoft.com/">
<policyResponseDto>
<batchNo>0001402018080311161000001</batchNo>
<errorCode>0000</errorCode>
<errorDesc>本次共上传数据1笔,其中成功1笔,失败0笔</errorDesc>
<responseCode>1</responseCode>
<policyResultInfoList>
<confirmSequenceNo>101000140a98c3994686a47f391fe022e794ce65c</confirmSequenceNo>
<errorCode>0000</errorCode>
<errorDesc>成功</errorDesc>
<policyNumber>1993301140220180001115</policyNumber>
<responseCode>1</responseCode>
</policyResultInfoList>
</policyResponseDto>
</ns2:uploadPolicyInfoResponse>
</soap:Body>
</soap:Envelope>
四、注意事项
1. JDBC的驱动包放到指定的目录下之后,soapUI需要重启一下
2. 如果oracle为集群配置时
jdbc:oracle:thin:PCIS_TEST/PCIS_TEST@(DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = IP1)(PORT = 1521)) (ADDRESS = (PROTOCOL = TCP)(HOST = IP2)(PORT = 1521))(LOAD_BALANCE = yes) (CONNECT_DATA = (SERVER = DEDICATED)(SERVICE_NAME = SERVICE_NAME ) (FAILOVER_MODE = (TYPE = SELECT)(METHOD = BASIC) (RETRIES = 180) (DELAY = 5) ) ) )
soapUI系列之—-05 JDBC Request & Xpath Match的更多相关文章
- SoapUI Pro Project Solution Collection-change the JDBC Request behavior
change the jdbc request : 1.change the driver name,connection string,query string or assert. the obj ...
- Jmeter系列(30)- 详解 JDBC Request
如果你想从头学习Jmeter,可以看看这个系列的文章哦 https://www.cnblogs.com/poloyy/category/1746599.html 前言 JDBC Request 主要是 ...
- Jmeter系列(31)- 获取并使用 JDBC Request 返回的数据
如果你想从头学习Jmeter,可以看看这个系列的文章哦 https://www.cnblogs.com/poloyy/category/1746599.html 前言 Jmeter 使用 JDBC R ...
- Jmeter系列(13)- 数据库操作之JDBC Connection Configuration配置元件、JDBC Request取样器
Jmeter常见操作数据库场景 准备.制造测试数据 获取.查询测试数据 数据库数据作为参数引用 清理测试环境.删除过程数据 数据库压测 Jmeter操作数据库环境准备 已经安装好的数据库,比如MySq ...
- 爬虫系列(十一) 用requests和xpath爬取豆瓣电影评论
这篇文章,我们继续利用 requests 和 xpath 爬取豆瓣电影的短评,下面还是先贴上效果图: 1.网页分析 (1)翻页 我们还是使用 Chrome 浏览器打开豆瓣电影中某一部电影的评论进行分析 ...
- jmeter(五)Sample之JDBC Request
jmeter中取样器(Sampler)是与服务器进行交互的单元.一个取样器通常进行三部分的工作:向服务器发送请求,记录服务器的响应数据和记录相应时间信息 有时候工作中我们需要对数据库发起请求或者对数据 ...
- Jmeter组件7. JDBC Connection Configuration & JDBC Request
Jmeter同样可以测试数据库的性能,通过执行增删改查的语句,以下举的是oracle的例子 Step 1: 下载ojdbc14.jar包放到Jmeter lib包中,在test plan中配置,并且重 ...
- jmeter 性能测试 JDBC Request (查询数据库获取数据库数据) 的使用
JDBC Request 这个Sampler可以向数据库发送一个jdbc请求(sql语句),并获取返回的数据库数据进行操作.它经常需要和JDBC Connection Configuration配置原 ...
- jmeter jdbc request使用详解
1.在使用 jdbc request之前需要加载一个jar包 在test plan中将jar包引入到classpath中 2.创建一个JDBC Connection Configuration Var ...
随机推荐
- 光猫&路由器网络配置
前期准备:电脑(工业电脑).网线.光猫.路由器 1.检查连接光猫后能否正常上网:把网线两头的水晶头,一头插在光猫上的千兆口,一头插在电脑(工业电脑)的网口上,看电脑能否正常上网: 可以正常上网:说明光 ...
- docker-compose nginx
docker-compose nginx example source code docker-compose nginx balancing
- 时间函数datetime time
time模块 time翻译过来就是时间,有我们其实在之前编程的时候有用到过. #常用方法 1.time.sleep(secs) (线程)推迟指定的时间运行.单位为秒. 2.time.time() 获取 ...
- java 数据库(二)
1.SQL概述 1.什么是SQL(了解): 结构化查询语言,是一种功能齐全的数据库语言.在使用它时,只需要发出“做什么”的命令,“怎么做”是不用使用者考虑的 SQL被美国国家标准局(ANSI)确定为关 ...
- 用户管理命令--useradd
用户管理命令--useradd 作用:用于添加一个新的用户 格式:useradd [ 选项 ] 用户名 选项的常用介绍 -u: UID指定用户id,必须是唯一的,并且大于499 -c: 添加注释,可以 ...
- python基础知识11-文件操作
文件 装饰器,装饰函数或者类的方法. 1.文件的基本操作 打开文件: 注意绝对路径与相对路径. path = 'text.txt' path = r'/home/pyvip/py_case/text. ...
- POJ 1161 Walls(Floyd , 建图)
题意: 给定n个城市, 然后城市之间会有长城相连, 长城之间会围成M个区域, 有L个vip(每个vip会处于一个城市里)要找一个区域聚会, 问一共最少跨越多少个长城. 分析: 其实这题难就难在建图, ...
- xtu字符串 B. Power Strings
B. Power Strings Time Limit: 3000ms Memory Limit: 65536KB 64-bit integer IO format: %lld Java c ...
- Leetcode 319.灯泡开关
灯泡开关 初始时有 n 个灯泡关闭.第 1 轮,你打开所有的灯泡.第 2 轮,每两个灯泡你关闭一次.第 3 轮,每三个灯泡切换一次开关(如果关闭则开启,如果开启则关闭).第 i 轮,每 i 个灯泡切换 ...
- [Kubernetes]kubectl命令补全出错
在kubernetes集群中,命令补全能够省很多事,但是这两天就很奇怪 kubectl get pod -n kube+tab键自动补全Namespace的时候出现错误 kubectl get pod ...