jmeter试用记录-脚本录制

来源:互联网 发布:python 如何管理线程 编辑:程序博客网 时间:2024/05/22 00:47
 是Apache 组织的开放源代码项目,它是功能和性能测试的工具,100%的用java实现。其测试脚本可以用另一个开源工具Badboy录制,脚本可视化程度高,但是无法正确录制dwr请求。能实现参数化和关联操作,并可以支持dwr请求,脚本中可以引入js函数,脚本编辑功能比较强大。测试计划采用xml格式,因此线上请求抓包抓下来以后,通过脚本处理可以转化为jmeter测试计划进行测试。


一、脚本录制


1、用自带工具录制


 (1)选中Test Plan单击鼠标右键,在弹出菜单中选择Add->Thread Group;
 (2)接下来选中WorkBench单击鼠标右键,在弹出菜单中选择Add->Non-Test Elements->HTTP Proxy Server;
 (3) 在“HTTP Proxy Server”窗口中Target Controller下拉框选择Test Plan > Thread Group(表示脚本生成在这个线程组下),Grouping下拉框选择Put each group in a new controller(表示把每组脚本放到一个新的组中,避免生成的脚本杂乱且无法组织);
 (4)单击窗口最下方的Start;
 (5)打开浏览器,设置代理服务器的设置为localhot,端口号为8080(在“HTTP Proxy Server”窗口中设置了使用8080端口进行侦听);
 (6)在地址中键入要录制页面的URL对页面进行操作,Jmeter就会自动把所进行的操作录制成为脚本了,可以看到Thread Group节点下面多了许多的子节点就是录制生成的脚本;
 (7)操作完毕后在Jmeter中单击Stop先停止录制,然后把浏览器的代理设置改为原来的设置即可。
 2、运行及记录结果设置
 (1) 完成脚本的录制后还需要定义你所需的结果设置才算完成了Test Plan的设置,首先要设置Thread Group(相当于虚拟用户组)的属性,单击Thread Group,在右边的窗口中设置Number of Thread(相当于虚拟用户数)为5,Ramp-Up Period(in seconds)为1,Loop Cout选项取消选中Forever,在右边的框中输入2。以上设置表示共有5个虚拟用户,每隔1秒运行一个,迭代2次。
 (2)要查看运行的结 果还需要加入Listener,选中Thread Group单击鼠标右键选择Listener->View Results in Table,通过这个视图可以查看到每个链接的执行情况,包括执行时间和成功与否,再加入Aggregate Report,通过这个视图可以查看每个Thread Group组的最大、最小和平均响应时间。加入View Results Tree,通过这个视图可以查看每个链接的执行情况,包括发出的请求和服务器返回的详细内容。
 (3)OK,所有的设置暂到此结束,接下载可以运行了。
 3、运行及结果查看
 (1)OK,运行看看吧,由于设置运行时间较短,所以先选择View Results in Table,然后按下Ctrl+r键开始运行脚本,就可以看到每个请求的运行结果了,还可以单击其他两个结果视图实时查看运行结果。1)选中“测试计划”,右键"添加-->线程组”
     2)选中“线程组”,右键"添加-->配置元素-->HTTP请求默认值”
          设置HTTP请求默认值
          设置[服务器名称或IP]比如:130.2.2.11
          设置[端口号]比如:8082
          设置[协议] 比如:http
          路径为空值 不填


     3)选中工作台,右键“添加-->非测试元件-->HTTP代理请求”,
         HTTP代理请求设置
         端口号为“8080”
         目标控制器选择“测试计划—〉线程组”


         设置包含模式及排除模式,若不设置,在录制完之后,可以把不需要的.css .jpg的行删掉。标准的包含模式及排除模式如下所列。
         i. .* - all
         ii. .*.png – png images
         iii. .*.gif – gif images
         iv. .*.jpg – jpeg images
         v. .*.php
         vi. .*.jsp
         vii. .*.html
         viii. .*.htm
          ix. .*.js


     注意:
      1).IE中局域网的端口号和JMeter中的Proxy server的端口号一致。
      2)如果使用自己的机器提供的WEB服务器,请不要使用8080端口,这样会和Jmeter的代理服务冲突。可以修改8080为别的端口或把WEB服务换到另外的端口。


     3)注意在使用端口号时,比如我们在这里使用的8080和8082,实际上,尽量选择机器没有使用的端口,否则会出现无法预料的结果,如无法录制等。    


2、用Badboy录制


     也可以采用另外一个开源测试工具来录制。打开Bodboy界面点击录制按钮就可以开始录制了。


操作完毕后,点击“停止”按钮,左上角的“Script”标签页出现了录制的url。


 


       接下来要把录制的内容存为Jmeter的格式,点击[File]-[Export to Jmeter],保存为test2.jmx文件。


 3、两种录制方式的区别


       相比较之下,Badboy的录制不需要修改浏览器的代理服务器配置,比较简单。但是比较录制结果,会发现jmeter录制的内容比Badboy全面, jmeter能够录制URL相关的所有静态文件,也可以正确录制dwr请求,Badboy不行。所以,对于复杂的网络应用,建议还是采用jmeter自带 的脚本录制功能。