Jmeter的取样器有:Http请求、JDBC请求、Beanshell取样器、调试取样器、JSR223取样器、FTP请求、GraphQL HTTP请求、TCP请求、Java请求等,本文主要介绍Http请求、JDBC请求、Beanshell取样器、调试取样器

一:Http请求

介绍下Http请求元件的各项信息
1、协议:可以省略不填,省略默认是http协议,端口号默认80,如果协议填的的https,则端口号默认是443
2、自动重定向:当发送HTTP请求后得到的响应是3XX状态码时,JMeter会自动重定向到新的页面,但不记录重定向的过程内容
3、跟随重定向:当响应是3XX状态码时,会记录重定向过程中的所有请求响应信息,在查看结果树中可以看到重定向过程中的所有请求,一般我们需要获取所有请求给与我们一些判断依据,所以此项一般都需要勾选。
4、keepalive:一种长连接通信方式,即发出多次请求时,不会频繁的建立连接和断开连接,勾选后,会在请求头带有:Connection:keep-alive的信息,通过此选项可以大大节约了3次握手协议所需的时间。
5、对post使用multipart/form-data:发送post请求时,使用multipart/from-data或者application/x-www-form-urlencoded方法发送。

此取样器一般保持默认使用即可。

二:JDBC请求

该请求主要用于对数据库进行增删改查操作的。在使用该请求前,需要添加JDBC配置文件并且填写好信息,配置操作见前面的博客:Jmeter全方面讲解——Jmeter的元件使用介绍:(三)配置元件详解02 - 筱筱创 - 博客园

讲解前准备工作:
(1)在自己电脑安装好mysql数据库,或者有公司项目的链接数据库信息。
(2)准备下测试数据表:
本文测试用的数据表建表语句如下:
CREATE TABLEmyindex(idint NOT NULL AUTO_INCREMENT,testvarchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci DEFAULT NULL, PRIMARY KEY (id), KEYindex_test(test) ) ENGINE=InnoDB AUTO_INCREMENT=115 DEFAULT CHARSET=utf8;

表信息:

下面JDBC请求取样器的页面信息

1、Variable Name of Pool declared in JDBC Connection Configuration:该选项填写的是JDBC配置元件中填写的连接池(pool)名称
2、QueryType:主要介绍以下几种
(1)Select Statement:该选项是一条查询语句,只能支持单条查询
(2)Update Statement:该选项是一条增/删/改语句,只能支持单条语句
(3)Callable Statement:该选项是可以执行多条语句的,增删改查语句都支持
(4)Prepared Select Statement:以参数化的形式执行查询语句。
(5)Prepared Update Statement:以参数化的形式执行增/删/改语句
3、Parameter values:SQL语句中引用的参数值
4、Parameter types:参数引用的数据类型,如以下几种类型:整型(INTEGER)、日期型(DATE)、字符串型(VARCHAR)、浮点型(DOUBLE)
5、Variable names:将查询结果应用到Jmeter变量中
6、Result variable name:将查询结果组合成数组形式
7、Query timeout:设置超时时间,0或者不填表示无限时间
8、Limit ResultSet:限制SQL语句返回结果集的行数,如果SQL语句也有Limit,最终会以此处设置的数量返回结果集数量
9、Handle ResultSet:定义由哪种类型处理callable statement 返回的结果

案例:
本文的JDBC配置信息如下:

案例1:使用Select Statement 查询单条SQL语句,并将查询结果保存到Jmeter变量中:

通过添加【调试取样器】,可以观察到查询结果成功保存到Jmeter变量中:

案例2:通过Update Statement执行单条增/删/该SQL语句。

此处我通过Update Statement去修改数据值:

执行结果:

案例3:Callable Statement执行多条SQL语句

注意执行结果:可能会报错,如下图:

在数据库连接池中添加完allowMultiQueries=true后再执行请求:

三:Beanshell 取样器

Beanshell 取样器的用法十分灵活,与前面介绍过的Beanshell前置处理器类似,可以随意添加自己想要的自定义方法然后发起调用。在Beanshell前置处理器中编写的脚本,可以在Beanshell取样器中完全兼容。
Beanshell前置处理器的使用介绍:
Jmeter全方面讲解——Jmeter的元件使用介绍:(四)前置处理器详解 - 筱筱创 - 博客园
区别在于:Beanshell前置处理器在查看结果树时没有结果展示,而Beanshell取样器在查看结果树时会有结果展示。

这里举个Beanshell取样器实例:
通过Beanshell取样器,编写一个方法,将Jmeter的变量进行拼接。

执行结果:

分类: Jmeter, 接口测试

Jmeter的元件使用介绍:取样器详解相关推荐

  1. 性能测试之JMeter取样器详解:sampler

    1.取样器介绍 取样器是用来模拟用户操作的,向服务器发送请求以及接收服务器的响应数据. 取样器是在线程组内部的元件,也就是说取样器只能在线程组中添加. 取样器(Sampler)是性能测试中向服务器发送 ...

  2. 全网最细节的jmeter接口测试教程以及接口测试流程详解

    文章目录 一.Jmeter简介 二.Jmeter安装 三.设置Jmeter语言为中文环境 四.Jmeter主要元件 五.Jmeter元件的作用域和执行顺序 六.Jmeter进行接口测试流程 七.Jme ...

  3. jmeter接口测试教程以及接口测试流程详解

    一.Jmeter简介 Jmeter是由Apache公司开发的一个纯Java的开源项目,即可以用于做接口测试也可以用于做性能测试. Jmeter具备高移植性,可以实现跨平台运行. Jmeter可以实现分 ...

  4. python导入模块介绍_详解Python模块导入方法

    python常被昵称为胶水语言,它能很轻松的把用其他语言制作的各种模块(尤其是C/C++)轻松联结在一起.python包含子目录中的模块方法比较简单,关键是能够在sys.path里面找到通向模块文件的 ...

  5. java项目斗地主介绍_详解java_ 集合综合案例:斗地主

    案例介绍 按照斗地主的规则,完成洗牌发牌的动作. 具体规则: 使用54张牌打乱顺序,三个玩家参与游戏,三人交替摸牌,每人17张牌,最后三张留作底牌. 案例分析 1.准备牌: 牌可以设计为一个Array ...

  6. Linux11-权限的介绍 rwx详解 修改权限 修改文件目录所有者 修改文件目录所在组 一个实践和两个练习

    目录 一 权限的基本介绍 0位:确定文件类型(常见类型五种 -  l  d  c  b) -:普通文件 l:链接,相当于win下的快捷方式 d:目录,相当于win下的文件夹 c:字符设备文件,鼠标键盘 ...

  7. Jmeter的元件使用介绍:前置处理器详解

    Jmeter的前置处理器可以用来在取样器执行前做一些数据准备操作,也需要注意使用的作用域问题.常用的前置处理器有:用户参数.BeanShell预处理器.JDBC预处理器. 一.用户参数 [用户参数]与 ...

  8. 2022全网最全最细的jmeter接口测试教程以及接口测试流程详解— 使用JMeter发送一个请求

    当我们第一次打开JMeter的时候,树形标签栏中只有一个"测试计划". 如果想要发送一个请求,需要操作如下步骤:(最基础的一个请求) 步骤1:创建一个测试计划 打开JMeter会默 ...

  9. soapui工具_python接口自动化(四)--接口测试工具介绍(详解)

    简介 "工欲善其事必先利其器",通过前边几篇文章的介绍,大家大致对接口有了进一步的认识.那么接下来让我们看看接口测试的工具有哪些. 目前,市场上有很多支持接口测试的工具.利用工具进 ...

  10. python接口自动化(四)--接口测试工具介绍(详解)

    简介 "工欲善其事必先利其器",通过前边几篇文章的介绍,大家大致对接口有了进一步的认识.那么接下来让我们看看接口测试的工具有哪些. 目前,市场上有很多支持接口测试的工具.利用工具进 ...

最新文章

  1. 【Java】Java中的数据类型说明
  2. Facebook解释“宕机”原因:主干路由器配置变化致通信中断,未发现用户数据受影响...
  3. LeetCode Implement Trie(Prefix Tree)
  4. 数据查找matlab,MATLAB:使用矢量化查找已排序数据的统计信息
  5. WPF - 图形设计器(Diagram Designer)
  6. python turtle画彩虹的代码_如何用python海龟库画彩虹
  7. 进程的三个状态的转换
  8. linux 采集 bash 脚本,Linux shell脚本攻略(2)
  9. js事件流 事件捕获 及时间冒泡详解
  10. Arduion 底层原理之 Uart函数 串口收发 串口协议解析
  11. 如何将CAD图纸转换成彩色jpg?
  12. Matlab高尔顿板仿真模拟实验
  13. linux在文件夹压缩,在linux下如何将文件夹压缩成.tgz文件
  14. 【游戏】GBA经典游戏《逆转裁判》1、2、3合集发布
  15. 互联网日报 | 微博开启视频号内测;淘宝正式进军教育领域;小米声学语音技术实现全面自研...
  16. R新建空矩阵循环放数据
  17. GD32报错Feature(s) : RDI, FlashBP, FlashDL, JFlash, GDB
  18. 【机器学习算法笔记系列】朴素贝叶斯(NB)算法详解和实战
  19. 最长上升子序列题目大合集
  20. 广义相对论-学习记录16-第七章-史瓦西解与粒子运动1

热门文章

  1. 江苏省2021年高考成绩查询有分数吗,江苏省2021年普通高考录取分数线公布
  2. kappa一致性检验教程_诊断试验的一致性检验-Kappa
  3. [置顶] 以盛唐气象,浇胸中块垒:唐诗与宋词学习笔记汇总目录
  4. 使用GLSurfaceView实现涂鸦画板功能
  5. File.ReadAllText读取文件中文乱码
  6. 嵌入式实验 之 DMA控制器实验
  7. 删除文件时提示正在被使用无法删除问题/删除dll文件
  8. 嵌入式应用之UART串口
  9. TexMacs环境变量
  10. 最新鑫迪自助建站系统源码V1.1完整版