当前位置:首页 » 网页前端 » jmeter脚本并发递增
扩展阅读
webinf下怎么引入js 2023-08-31 21:54:13
堡垒机怎么打开web 2023-08-31 21:54:11

jmeter脚本并发递增

发布时间: 2023-06-28 06:48:52

1. 如何使用jmeter来实现更大批量的并发的解决方案

近期在用JMeter进行负载测试的 时候,发现使用单台机器模拟测试超过比如500个进程的并发就有些力不从心或者说不能如实的反应实际情况,在执行的过程中,JMeter自身会自动关闭,要解决这个问题,则可以使用分布式测试,运行多台机器运行所谓的 Agent 来分担 JMeter自身的压力(这个和LODARUNNER是一样的道理),并借此来获取更大的并发用户数,则需要进行相关的配置参数和文件权限进行一些修改,具体如下:
1、在所有期望运行 JMeter 并作为 Load Generator 的机器上安装 JMeter,并确定其中一台机器作为 Controller,其他的机器作为 Agent——假定我们使用两台机器 192.168.0.1 和 192.168.0.2 作为 Agent;
2、在Controller 机器的 JMeter 安装目录下找到 bin 目录,再找到 JMeter.properties 这个文件,使用记事厅拍本或者其他文字编辑工具打开它;
3、在打开的文件中查找“remote_hosts=”这个字符串,你可以找到这样一行“remote_hosts=127.0.0.1”。其 中的 127.0..0.1 表示运行 JMeter Agent 的机扮仿羡器,这里需要修改为“remote_hosts=192.168.0.1:1099,192.168.0.2:1099”——其中的 1099 为 JMeter 的 Controller 和 Agent 之间进行通讯的默认 RMI 端口号; (个人备注:只改要作为Controller的机器上的此文件即可;Agent的机器上的文件可以不理会)
4、保存文件,然后依次启动作为Controller的机器上的jmeter-server文件和作为Agent的机器上的jmeter-server文件(个人备注:如果是WINDOWS系统版本的jmeter,则是启动jmeter-server.bat的批处理文件,LINUX系统则是jmeter-server文件,没有后缀的,但是要修改为可执行权限,这后面具体有提到),并重新启动 Controller 机器上的 JMeter.bat,并进入 Run -> Remote Start 菜单项,在这里可以看到远程启动菜单下面有192.168.0.1 ,192.168.0.1两个IP地址
5、如果要让某个电脑执行,可以点击改电脑的IP地址就可以,如果两个都要执行,可以点击Run 菜单下的“远程运行全部”菜单
6、有时候用作代理的机器太少,仍不能满足需要,则需要将作为Controller的电脑也当作Agent,则同样需要修改 JMeter.properties文件,将Controller的IP地址写入。同时,这个时候,需要打先打开Controller 电脑中JMeter下bin目录下的jmeter-server.bat,然后再打开JMeter.bat,此时,进入Run -> Remote Start菜单,可以看到Controller也作为远程机器进行运行。 (针对第大清六点我个人经过实地测试后要进行细化确认:如果是在LINUX下,此文件的权限都还是要修改的,且jmeter-server会调用名为jmeter脚本文件,其jmeter文件的权限也要修改为可执行的才可以,且每个被调用的Agent的机器的jmeter-server文件也是要执行中才可用调用,这点很重要。)。

/* Style Definitions */ table.MsoNormalTable {mso-style-name:普通表格; mso-tstyle-rowband-size:0; mso-tstyle-colband-size:0; mso-style-noshow:yes; mso-style-priority:99; mso-style-qformat:yes; mso-style-parent:""; mso-padding-alt:0 7px 0 7px; mso-para-margin:0; mso-para-margin-bottom:0; mso-pagination:widow-orphan; font-size:14px; mso-bidi-font-size:15px; font-family:"Calibri","sans-serif"; mso-ascii-font-family:Calibri; mso-ascii-theme-font:minor-latin; mso-hansi-font-family:Calibri; mso-hansi-theme-font:minor-latin; mso-font-kerning:1px;}

2. JMeter 接口/并发/性能测试(详尽版)

        Jmter工具设计之初是用于做性能测试的,它在实现对各种接口的调用方面已经做的比较成熟,因此,本次直接使用Jmeter工具来完成对Http接口的测试。因为再做接口测试时可以设置线程组,所以也可做接口性能测试。

        本篇使用JMeter完成了一个完整的Http接口性能测试流程,从脚本编写(工具化生成),执行到最终结果分析。

> 接口地址 :我们选取最常见的网络搜索接口:https://www..com/s?ie=utf-8&&wd=新闻

            ie:编码方式,默认为utf-8

            wd: 搜索词

> 返回结果判断 (断言):

            搜索结果,我们可以通过校验结果中是否含有搜索词wd来判断本次请求成功或失败。

> 依次进行如下操作:1) 添加线程组           2)添加请求&http消息头管理器          3)添加结果监听器(察看结果树 )   

                                    4)添加用户自定义变量        *)添加定时器(集合点)

                                    5)添加请求的断言    6)添加断言结果    7)添加聚合报告    8)执行  

                                    9)结果分析(分析测试报告)

1) 添加线程组

        添加虚拟用户组(Thread Group),这些虚拟用户用来模拟访问被测系统

        一个 线程组(Thread Group) 等于 一组虚拟用户(virtual users group) ,

         一个Java线程  等于   一个用户

2)添加请求、添加 http消息头管理器

2.1)添加请求

        接下来的一步就是要加入实际被测页面,右击“线程组” > “添加” > “Sampler” > “HTTP请求”。

        ps: 参数,用于get 或put请求;消息体数据用于post    请求; -----很重要,很容易出错!

2.2)http消息头管理器

3)添加察看结果树

        添加结果监听器(察看结果树 ),  “监听器”让用户来观察测试结果

        运行后点击左侧观察结果数,查看请求执行结果,红色为失败,绿色为成功,如下图:

4)添加用户自定义变量  &集合点

用户自定义变量 -,需要再HTTP请求处,手动修改请求中为变量形式 ${wd}

*)添加集合点

 5)添加请求的断言    6)添加断言结果    

7)添加聚合报告    

8)执行  

至此,就完成了一个完整Http接口的JMeter性能测试脚本编写,点击运行即可

>查看运行日志,   “选项” > “Log Viewer”看看运行的日志。如果你还是看不到日志,你可以点击下面所示的三角箭头展开或者收起日志视图

9)结果分析(分析测试报告)

待性能测试执行完成后,打开聚合报告可以看到: 

10) 脚本查看

        可以使用编辑器查看.jmx文件,如下图所示: