jmeter脚本开发:SOAP接口和JDBC(四)

1|0一. 什么是soap接口


webservice是一个web的应用程序,使用xml向外界暴露可供调用的API接口

webservice的接口标准

SOAP(Simple Object Access Protocol)  版本 1.1  1.2

UDDI(UnviversalDescription Discovery and Integration)

WSDL(Web Service Description Language),描述语言,基于xml

soap是基于XML的简易协议,可使应用程序在HTTP之上进行信息交换

XML本身是一种用于传输和存储数据的一种文本文件

soap可以理解为:http + xml

2|0二. jmeter调用soap接口


jmeter5 版本,没有soap协议取样器

方法1:常规做法(使用http取样器 + xml数据)

http取样器:消息头管理器

jmeter5 调用 soap 1.1版本接口

消息头管理器:Content-Type  SOAPAction

消息体数据

获取天气预报web服务接口为例

 

soap1.1举例:

SOAPAction表示真正调用的接口,soap1.1必须添加

soap1.2举例

没有SOAPAction

 

 

3|0三. jdbc脚本制作


1. JDBC(Java Data Base Connectivity)

是一种用于执行SQL语句的JAVA API

通过这个api可以直接执行sql脚本

 

2. jemter如何使用jdbc发送sql?

(1). 对应数据库的jar包(驱动包)

mysql-connector-java.***jar    数据库类型对应的jar包,放到jmeter的lib目录下

(2). 配置数据库连接信息 JDBC Connection Configuration

配置元件Config Element > 数据库连接配置 JDBC Connection Configuration

注意:这个一般放在setup线程组下

 

3. 数据库连接配置信息(JDBC Connection Configuration)

Variable Name for created pool   连接池名称

连接池:分配、管理、释放数据库连接

Database Connection Configuration

DatabaseURL:jdbc:mysql://数据库ip:端口/数据库名  可以加上?useUnicode=true&characterEncoding=utf-8   字符编码

JDBC Driver class:数据库驱动类型——与自己的数据库类型要一致

用户名、密码

(3) 添加数据库请求取样器 JDBC Request

线程组 > 添加取样器 > JDBC Request

Variable Name of Pool   配置信息中填写的连接池名称

SQL Query   条件值是变量是,用?占位

Parameter values:变量值,多个用逗号分隔

Parameter types:变量类型

Variable names:取查询结果列的别名,多个用逗号 , 跳过列用空

Result Variable name:变量存储所有的返回值

query timeout:超时时间

 

 

 

 

 

 

 

 

当查询语句参数是动态的时候,不能使用Select Statement,而要是有Prepared Select Statement,同理,Prepared Update Statement也是这样

 

 

 

4|0四. 如何使用jdbc批量造数据


思路:循环执行insert脚本

Query type:update statement

sql:insert into table_name(column_name) values (valus)

insert into member(RegName, Pwd, MobilePhone, Type, LeaveAmount, RegTime) values('小蜜蜂', '${__uppercase(${__MD5(123456,)},)}', ${__Random(13700000000,
13799999999,)}, 1, 0, now())

注意:密码md5大写加密,必须使用引号引起来,否则会报错Unknown column 'e10adc3949ba59abbe56e057f20f883e' in 'field list'

线程组:多线程,持续循环

设置100个线程,运行,查看数据库是否插入100条数据

如何插入的数据不一样?

参数化 + 关联

五. 如何使用jdbc关联接口测试

接口中动态变化参数值来源?函数、CSV文件、上一个接口返回值、数据库

数据库思路:

  从数据库中select某些值

  把值传递给某个变量

  变量被关联到接口请求中,作为输入参数

 


__EOF__

本文作者cnhkzyy
本文链接https://www.cnblogs.com/my_captain/p/11715494.html
关于博主:评论和私信会在第一时间回复。或者直接私信我。
版权声明:本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!
声援博主:如果您觉得文章对您有帮助,可以点击文章右下角推荐一下。您的鼓励是博主的最大动力!
posted @   cnhkzyy  阅读(966)  评论(0编辑  收藏  举报
编辑推荐:
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
阅读排行:
· DeepSeek 开源周回顾「GitHub 热点速览」
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· 单线程的Redis速度为什么快?
点击右上角即可分享
微信分享提示