![](https://img-blog.csdnimg.cn/20201014180756928.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
jmeter
文章平均质量分 64
关于jmeter相关知识
你是猴子请来的救兵吗!!
这个作者很懒,什么都没留下…
展开
-
jmeter的报错
1、连接数据库报:javax.net.ssl.SSLException: closing inbound before receiving peer's close_notify在连接信息处加上“useSSL=false”例 : jdbc:mysql://12.24.54.56:3306/user?useSSL=false2、Can not issue data manipulation statements with executeQuery().这个地方没有选对,这个只是查找,我原创 2022-03-24 09:49:35 · 451 阅读 · 0 评论 -
性能测试_cpu问题排查
一、cpu问题现像举个例纸:第一步:我轻轻一压,才用了5个线程 ,cpu就被占满了,平均负载也很高第二步:用pidstat 1 (用于监控全部或指定进程的cpu情况,每1秒刷新一次)排在前面的,就是我压测的java程序记住这个进程号,后面排查问题有用:11938PID:进程ID%usr:进程在用户空间占用cpu的百分比%system:进程在内核空间占用cpu的百分比%guest:进程在虚拟机占用cpu的百分比%CPU:进程占用cpu的百分比CPU:处...原创 2021-11-21 00:22:02 · 635 阅读 · 0 评论 -
性能测试_cpu使用率和平均负载简述
一、CPU利用率:CPU除了空闲态以外的其他时间占比: 我们先看一下top命令按1可以展开看cpu所有的使率us(user):表示 CPU 在用户态运行的时间百分比,通常用户态 CPU 高表示有应用程序比较繁忙。典型的用户态程序包括:数据库、Web 服务器等。sy(sys):表示 CPU 在内核态运行的时间百分比(不包括中断),通常内核态 CPU 越低越好,否则表示系统存在某些瓶颈。ni(nice):表示用 nice 修正进程优先级的用户态进程执行的 CPU 时间...原创 2021-11-21 00:22:24 · 2471 阅读 · 0 评论 -
jmeter_jenkins持继集成
一、docker安装jenkins方式(centos7系统)1、拉取镜像:blueocean docker pull jenkinsci/blueocean2、启动容器:docker run -u root -d -p 8081:8080 -p 50000:50000 -v jenkins-data:/var/jenkins_home -v /var/run/docker.sock:/var/run/docker.sock jenkinsci/blueocean容器外部映射端口为 8081,映原创 2021-11-21 00:22:55 · 368 阅读 · 0 评论 -
jmeter_命令行操作及html报告分析
一、jmeter命令-n:说明jmeter非GUI运行-t:运行的测试计划名称,xxx.jmx路径+文件 (运行jmx文件)-l:JTL文件去保存结果,路径+xxx.jtl(存测试报告)-e:在脚本运行结束后生成html报告-r: 使用远程执行-j:保存执行log-g:测试结果文件路径。通过jtl文件生成测试报告-o:测试报表文件夹。必须为不存在或空-H:代理机主机名或者ip地址-P:代理机端口二、启动jmeter开始测试,并输出测试报告(1)如果在本地执行.原创 2021-11-21 00:23:07 · 951 阅读 · 0 评论 -
jmeter_ 分布式压测+csv参数化分布式压测
分布式压测条件1、运行相同版本的JMeter2、使用相同的java版本3、都在一个网段4、server.rmi.ssl.disable开关一致5、关闭防火墙6、使用的JMeter插件一致一、首页实现分布式压测,两台计算机需要在同一网段什么是同一网段呢,ip地址分类A类网段:第一位一致就是同一网段B类网段:前两位一致就是同一网段C类网段,前三位一致就是同一网络二、前期准备1、分布是压测,分为控制器(controller)和代理(agent),也用的叫..原创 2021-11-21 00:23:44 · 1149 阅读 · 0 评论 -
jmeter_监听器+influnxdb+grafana
1、性能测试要观注的几个点,RT,TPS,资源利用率,出错率那在jmeter上可以看到RT,TPS,出错率一、聚合报告1、Lable:Label:每个 JMeter 的 element(例如 HTTP Request)都有一个 Name 属性,这里显示的就是 Name 属性的值;2、#Samples:表示这次测试中一共发出了多少个请求,如果模拟10个用户,每个用户迭代10次,那么这里显示100;3、Average:平均响应时间——默认情况下是单个 Request 的平均响应时间,当使原创 2021-11-21 00:23:54 · 426 阅读 · 0 评论 -
jmeter_常用断言
一、json断言1、定义2、值等于XX,code值等于03、正则方式,key不能为空二、响应断言Apply to:Main sample only --仅适用于主样本Sub-samples only --仅适用于子样本Main sample and sub-samples --均适用。JMeter Variable Name to use --断言将应用Jmeter命名的变量测试字段:响应文本 --来自服务器的响应文本,即正文,不包括任何HTT..原创 2021-11-21 00:24:03 · 1050 阅读 · 0 评论 -
jmeter_json_取样器
一、json提取器大同小异$代表根目录,然后按顺序往下找1、所以取start :$.data[0].start其余的,我觉得下面的链接写的比较好,可以参考其他取值方式原创 2021-11-21 00:24:13 · 120 阅读 · 0 评论 -
jmeter_使用插件Thread Communication实线跨线程线传参
一、首先安装插件前置处理器/后置处理器下,作用就是跨线程组传递数据,类似函数_setProperty 和 _property,这种方式更简单一、安装插件,我已经装好了,否则要从available里面搜到此插件,并安装同样那提取token为例1、先用边界值法,提取出token2、为登录请求添加后置处理器2、在下面的请求中添加前置处理器中的 thread communicantion preprocessor引用方式...原创 2021-11-20 22:59:41 · 123 阅读 · 0 评论 -
jmeter_参数化登录业务流(读csv)
一、顺序读取CSV1、选择配置元件-》csvdatasetconfig配置方式调用方式放在循环控制器里,每个线程会在每个迭代顺序从csv文件里取值二、随机读取csv先安装一个插件(如果没有plugins manager可以百度一下安装方式,遍地都是)打开选项-》plugins manager ->avaliable plugins->搜rand安装插件选择配置元件-》randomcsvdatasetconfig...原创 2021-11-20 22:58:57 · 965 阅读 · 0 评论 -
jmeter_参数化登录业务流(读数据库)
我们拿登录举例来说,测试思路大约是这样的1、为了不污染原有数据库数据,且找一种比较容易控制的方式,我们可以往数据库中造一批测试数据2、执行完测试以后,为了将数据库恢复成原来的样子,我们要在测试完毕后,将造的数据全部删除方法一:一、设计思路如下1、setup线程组 (1)查看之前是否有之前造的数据,如果有先删除(因为压力测试总会返复执行,重复插入同样的用户名密码,数据库会报错) (2)向数据库中插入数据(要用到mysql的一些组件,计数器,循环控制器)...原创 2021-11-20 22:58:20 · 543 阅读 · 0 评论 -
Jmeter_基本操作_其他逻辑控制器
一、随机顺序控制器:随机顺序控制器里的所有请求都会被执行到,但顺序随机两次执行的顺序不一样二、随机控制器:随机控制器里的内容只会随机选择一个执行每次只会选择一个执行二、吞吐量控制器常用情况:混合场景测试两个请求,添加吞吐量控制器,一个设成20,一个设成80如图:总共会产生10次请求查询2设成80%查询3设成20%则会按总请求的百分比,来分配请求的次数三、事务控制器:一个事务控制器里的所有请求,算一个tps,用于测试一个组合业务四、循原创 2021-11-20 22:57:39 · 143 阅读 · 0 评论 -
Jmeter_基本操作_if逻辑控制器
一、if控制器1、应用场景1(1)interpret condition as variable expression:勾选上需要用jexl函数或groovy函数,不勾选则可以直接写表达式,注(表达式中的数据类型是字符串)(2)Evaluateforallchildren:如果不勾选,则只要判断成功,if里面的请求都可以执行,如果勾选,则每一个请求在执行之前,都要判断一次if语句例:配置原件中,新建用户自定义变量:新建自定位变量 ...原创 2021-11-20 22:56:52 · 616 阅读 · 0 评论 -
Jmeter_什么是性能测试
一、什么是性能测试个人理解:多线程+协议+模拟线上真实场景 保证在新版本发布上线后,系统可以在并发下正常运行,且系统资源没有超过预期的目标,二、性能常用指标RT:响应时间,包括resquest time+response timehps:每秒点击数tps:每秒通过的事务数pv:页面浏览量uv:独立访问者throughput:吞吐量性能关注的指标:RT,tps,服务器错误率,服务器资源使用情况(包括cpu,磁盘空间,网络)三、服务器端的链路性能测试应当先做内网,..原创 2021-11-20 22:51:47 · 332 阅读 · 0 评论 -
Jmeter_性能测试场景设计
一、性能测试场景设计方式(如何判断产生多少tps)1、在毫无任何数据的情况下(只能拍脑袋)(1)拍脑袋(2)根据竟品(3)根据业务模型计算2、如果知道一天的总访问量(pv)(1)24小时平均,但这不符合正常的访问逻辑(2)二八原则:原理来自百分之80的财富掌握在百分之20的人手里,即,百分之80的请求量,都会集中在一天内20%的时间里,当然这要看一整天的访问量走势,可以是二八原则,也可以是一九原则比如说pv是1000 则tps是 (1000*0.8)/ (24*360...原创 2021-11-20 22:47:49 · 1624 阅读 · 0 评论 -
Jmeter_基本操作-线程组
一、测试计划:有且只有一个,可以理解成一个jmeter项目二、线程组常用线程组1、setup :在执行普通线程组之前,先执行setup线程组,用于执行普通线程组之前的准备 如连接数据库获取数据等,在我理解就像测试用例中的前提条件2、线程组:普通线程组,里面包含要测试的业务3、teardown:用于测试完正常压力测试后的一些善后操作 比如说关闭数据库,清除数据库中的一些测试产生的垃圾数据等等三、取样器错误要执行的操作(1)继续...原创 2021-11-20 22:47:00 · 1824 阅读 · 0 评论 -
Jmeter_基本操作-取样器
一、取样器取样器:添加在线程组下面,可以有多个,一个取样器我理解是相当于一个请求接口,里面配置着请求的地址和参数二、http取样器1、http的几种常见的请求方式(get和post)(1)get请求:get请求没有正文 参数在url地址栏长度有限且不安全(2)post请求:post请求有正文 参数量大 安全性高 post 四种正文格式 form表单 html提交数据的默认格式,例如: username=admin&password12...原创 2021-11-20 22:46:05 · 2559 阅读 · 0 评论 -
Jmeter_登录业务流知识点
一、 知识点(以下知识点亲试踩了很多坑):1、重定向的解决2、跨线程组传递参数3、上一个请求成功后,再执行下一个请求二、解决重定向解释重定向表现为响应状态吗是301(永久重定向)或302(临时重定向),在响应头中,会有一个重定向的地址发过来永久重定向 301:该状态码表示请求的资源已被分配了新的 URI,以后应使用资源现在所指的URI。也就是说,如果已经把资源对应的 URI 保存为书签了,这时应该按 Location 首部字段提示的 URI 重新保存临时重定向 30.原创 2021-11-20 22:43:28 · 750 阅读 · 0 评论