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>
View Code

四、注意事项

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) ) ) ) 

 

转载于:https://www.cnblogs.com/liuyitan/p/7083723.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值