随笔分类 - JMeter项目实战系列
摘要:###点击以下链接 点击这里跳转到JMeter实战系列
阅读全文
摘要:##前言 在Linux环境上搭建一套 JMeter + Ant + Jenkins环境。在JMeter中编写好脚本,Jenkins设置好构建触发器,比如上班前和下班前自动化跑一次自动化脚本。 环境信息: CentOS 7.7 JDK 1.8 JMeter 5.2 Ant 1.9.5 Jenkins
阅读全文
摘要:##使用场景 Linux 环境会更加稳定一些,把 JMeter 搭建在 Linux 上做性能测试,再比如我们的 JMeter + ant + jenkins 也可以在 Linux 上跑。 ##环境信息: CentOS 7.7 64位 JDK 1.8 JMeter 5.2 ##1、下载JMeter安装
阅读全文
摘要:##使用场景 在使用JMeter做接口测试的时候,有时候要进行一些预操作,比如要先登录以及插入部分数据,还有就是测试结束的时候退出登录、清理数据等,都要做处理。JMeter中的setUp和tearDown线程组和python unittest框架中的setUp和tearDown类似。 setUp 线
阅读全文
摘要:#JMeter Cookie的使用场景 工作中的场景,比如某个系统,需要先登录,然后进行添加门店、添加会员、添加会员等操作,这些操作可执行的前提是要先登录。用户在登录的时通常会生成cookie,接下来的操作中都要带上cookie。还会遇到一些场景,只需要登录一次,接着进行其他操作,还有跨线程怎么传输
阅读全文
摘要:#工作场景 做性能测试之前,一般要准备一些铺底数据,比如插入五万条数据;还有就是做接口测试,先进行数据初始化,先插入部分数据。 批量插入数据,要注意的点: 主键ID不能重复,可以利用随机函数解决 涉及到同时执行多条sql语句的,要在Database URL后加入:allowMultiQueries=
阅读全文
摘要:##一、JMeter Bean shell断言 什么是beanshell? Beanshell是一种完全符合Java语法规范的脚本语言,并且又拥有自己的语法; Beanshell是Java写成的,是一个小型的Java源代码解释器,具有对象脚本的语言特性; Beanshell执行标准的Java语句和表
阅读全文
摘要:##前言: 有时候我们请求的参数可能需要加密,比如登录接口中的密码可能需要经过md5加密,或者经过其他方法的加密,对于加密怎么处理,以下就通过MD5加密来举例子,掌握思路,其他加密的处理也基本是一样的思路。 ##方法一: 使用JMeter内置的md5函数进行处理 把MD5加密的函数引用到登录接口 #
阅读全文
摘要:#前言 连接数据库进行测试在工作中会比较常用,首先可以读取数据库的数据进行参数化、关联等,批量添加测试数据以及清理数据,还可以直接对SQL语句进行压测。 ##一、基本介绍 ###1. 首先第一步要导入mysql驱动包,放到jmeter/lib目录下, 下载地址:https://dev.mysql.c
阅读全文
摘要:我们在使用JMeter的过程中,有时候会要到乱码的问题。一是新增的时候出现乱码,还有就是接口的响应出现乱码。 ##一、新增的时候出现乱码 ##方法一: 添加HTTP请求时在Content encoding后填入编码:utf-8 看一下结果:没有乱码了 ##方法二: 在请求中加一个BeanShell前
阅读全文
摘要:##一、JMeter跨线程调用token ###1、首先确保在单线程调用token成功(如果不会就跳到第四页) 把B接口放到第二个线程组 ###2、设置token为全局变量 在线程一添加--Sampler--Bean Shell Sampler 输入脚本函数:${__setProperty(Toke
阅读全文
摘要:##一、JSON提取器 该组件使您可以执行JSON文档的验证。JSON PostProcessor使您可以使用JSON-PATH语法从JSON响应中提取数据。跟正则表达式提取器很相似。她必须作为HTTP Sample的子项或具有响应的任何其他采样器。她允许您以非常简单的方式提取文本内容。 JSON提
阅读全文
摘要:##一、关联获取Token ###1、Token是什么? Token是服务端生成的一串字符串,以作客户端进行请求的一个令牌。 ###2、Token的作用 身份验证; 避免表单重复提交 ###3、Token和session的区别? App以及分布式的系统用Token比较多; session在web服务
阅读全文
摘要:#一、关联 讲关联之前先熟悉一下后置处理器,因为关联取的数据就是请求后的数据。 后置处理器: 后置处理器(Post Processors)负责在请求后进行工作。后置处理器常作为处理响应的数据,后置处理器中的正则表达式提取器常常用于提取动态关联的数据。后置处理器放在请求的子集中。 ![](https:
阅读全文
摘要:#一、JMeter-CSV随机参数化 在性能测试中,我们要实现这样一个场景,模拟不同的人购买不同的商品。我们前面讲的CSV参数化,是安装表格的顺序进行读取数据,如果是随机读取表格的数据,我们模拟的行为就会更真实一些。 需要用到的插件:Random CSV Data Set Config 步骤: 在J
阅读全文
摘要:一、JMeter-CSV参数化-中文乱码解决办法 CSV数据文件配置在配置元件中,根据JMeter的执行顺序,先执行配置原件,然后才会执行取样器。通过CSV数据文件设置把CSV的数据读取出来存放在变量中。 有时候用CSV参数化的时候,会出现乱码的情况,通过调试取样器也可以看出来,CSV数据文件配置读
阅读全文
摘要:##一、JMeter-CSV数据文件设置 CSV数据文件配置用于从文件中读取行,可以是csv文件或者txt文件,并将它们拆分为变量。它非常适合处理大量变量,对于使用“随机”和唯一值的测试也很有作用。 默认情况下,文件只打开一次,每个线程将使用文件中的不同行。但是,行传递给线程的顺序取决于它们执行的顺
阅读全文
摘要:##一、JSON响应断言 该组件使您可以执行JSON文档的验证。 首先,它将解析JSON,如果数据不是JSON则失败。 其次,它将使用https://github.com/json-path/JsonPath中的语法搜索指定的路径。如果找不到该路径,它将失败。 第三,如果在文档中找到JSON路径,并
阅读全文
摘要:##一、JMeter响应断言 看一下官方文档介绍,断言: 断言用于对采样器执行结果的检查,并在同一范围内的每个采样器之后进行处理。如果要对某个采样器进行断言,直接将断言添加到采样器的子集即可。 为什么要用断言? JMeter以及Postman等接口测试工具,他们都是基于协议进行工作的,使用这些工具进
阅读全文
摘要:##一、JMeter配置原件-HTTP信息头管理器 看一下官方文档介绍 咋一看,这个解释有点懵。我尝试解释一下,前面我们学过HTTP协议的基础知识,HTTP有请求行,请求头,空一行以及body组成。请求头中比较重要的值是user-agent、content-type以及sign签名等。User-ag
阅读全文