开始你的第一个JMeter脚本:利用Jmeter录制脚本的2种方法汇总

JMeter是一款在国外非常流行和受欢迎的开源性能测试工具,像LoadRunner一样,它也提供了一个利用本地Proxy Server(代理服务器)来录制生成测试脚本的功能。

但Jmeter与LoadRunner相比也有很多的不同点,那么我们就先来看看这两个工具的异同:

1、jmeter 的架构跟loadrunner原理一样的,都是通过中间代理,监控&收集并发客户端发现的指令,把他们生成脚本,再发送到应用服务器,再监控服务器反馈的结果的一个过程.

2、Jmeter安装简单,只需要解压Jmeter文件包到C盘上可以了,其实是没有安装.要是你想执行调试测试脚本,前提是:装上jdk和netbean插件.而LoadRunner安装包有1G多,在一台P3.0,1G内存的PC上安装要一个多小时.要是装过较旧的盗版还不能再装新版,解决办法倒是有,但麻烦且花时间.

3、Jmeter没有IP欺骗功能,IP欺骗是指在一PC台上多个IP地址来分配给并发用户.这个功能对于模拟较真实的客户环境来说,是较有用.LoadRunner有此功能.

4、Jmeter也提供了一个利用本地ProxyServer(代理服务器)来录制生成测试脚本的功能,但是这个功能并不好用,测试对象的个别参数却要手工增加上去,还得附带装个IE代理,如GoogleToolbarDownloader这些插件来捕捉参数.但是有一个工具bodboy,利用这个工具可以录制操作,然后选择将脚本保存为Jmeter脚本,然后利用Jmeter可以打开并修改脚本

5、Jmeter的报表较少,对于要分析测试性能不足以作为依据.如要知道数据库服务器或应用程序服务的CPU,memory等参数,得在相关服务器上另外写脚本记录服务器的性能.

6、Jmeter做性能测试,主要是通过增加线程组的数目,或者是设置循环次数来增加并发用户,而LoadRunner可以通过在场景中选择要设置什么样的场景,然后选择虚拟用户数。

7、Jmeter可以通过逻辑控制器实现复杂的测试行为,相当于LoadRunner中的测试场景

8、Jmeter可以做web程序的功能测试,利用Jmeter中的样本,可以做灰盒测试,LoadRunner主要用作性能测试

9、Jmeter是开源的,但是使用的人较少,网络上相关资料不全面,需要自己去揣摩,而LoadRunner是商业软件,如果是正版,有技术支持,同时,网络上的资料相当多。

10、Jmeter的脚本修改,主要是对Jmeter中各个部件的熟悉程度,已经相关的一些协议的掌握情况,而不依赖于编程,而LoadRunner除了复杂的场景设置外,还需要掌握函数,修改脚本。

依我看来,Jmeter更像一个瑞士军刀,小巧,且功能齐全。初次认识Jmeter的时候,我觉得它不好,是因为相比LR来说,它没有脚本录制功能,也许不是没有,只是我不知道。

那么下面我们就一起来看看利用Jmeter录制脚本的两种方法:

第一种方法:通过bodboy来录制脚本。

Badboy是一款不错的Web自动化测试工具,如果你将它用于非商业用途,或者用于商业用途但是安装Badboy 的机器数量不超过5台,你是不需要为它支付任何费用的。也许是一种推广策略,Badboy提供了将web测试脚本直接导出生成JMeter 脚本的功能,并且这个功能非常好用,也非常简单。你可以跟着下面的试验步骤来迈出你在开源世界的第一步。

1.打开badboy工具,点击工栏目上的红色圆形按钮,在地址栏目中输入被测试项目的地址。

录制完成后,点击工具栏旁边黑色按钮,结束录制。

选择“文件”Export to Jmeter…

2.打开Jmeter工具,选择“文件”-->“打开”选择刚才保存的文件(.jmx类型),将文件导入进来了。

第二种方法,通过JMeter自身设置来录制脚本。

这种方法是我才发现的(鄙视一下自己的无知,嘻嘻~!),觉得方法比较简单。

1. 打开JMeter工具

创建一个线程组(右键点击“测试计划”--->“添加”---->“线程组”)

创建一个http代理服务器(右键点击“台”--->“添加”--->“非测试元件”--->“http代理服务器”)

完整的设置参照下图:

2.下面来设置一下IE浏览器

IE--->“internet属性”--->“连接”--->“局域网设置”

设置为本机IP就可以了,注意端口号要与Jmeter上的端口号一致。默认都是8080端口。

3. 现在点击jmeter上的“启动”按钮,打开浏览器输入需要录制web项目地址,jmeter会自动记录你IE所访问的页面。

总结:

第二种方法是我刚才知道的一种,关于这两种方法哪个更好,现在还不知道,但第二方法有通过IE浏览器辅助的,我想可能只要IE能打开的,它都能记录,但它录制的脚本看上去比较乱。

还有就是http代理服务器的设置,(比如:分组:每一个组放入一个新的服务器---只有这一个选项才能正常录制),有时间再仔细比较一下两种方法的不同之处。

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20181122A1KTY300?refer=cp_1026
  • 腾讯「云+社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 yunjia_community@tencent.com 删除。

扫码关注云+社区

领取腾讯云代金券