其实在接触jmeter之前,曾经一直通过LR做性能测试,期间也接触过AB等比较轻量级的性能测试工具,但是其实这些工具的原来其实无法是通过多线程模拟用户并发最终得到一些性能报告。一个偶尔的机缘巧合让我这个不怎么爱写代码的人接触到了Jmeter,并且开始了一段奇妙的神秘之旅
Jmeter作为主流的性能测试工具,在一些中小型公司逐步取代了LR的王者地位,其实LR之所以在国内那么流行,其一要感谢国内的测试培训机构(无论是主流的还是非主流网络授课的清一色都是LR工具讲解),第二需要感谢Hacker能够把一款收费的商业软件无偿地让广大测试人员使用(当然也有传言说这个是mercury的商业策略),第三就是其强劲的无所不能的功能(其中主要是因为其录制功能,能够帮助不少初学者拜托写代码的苦恼)
那么大家是否觉得既然LR那么强大,为啥还要学习Jmeter,那我就简单的拿LR和Jmeter对比下,从而凸显出jmeter比LR优秀的地方:
- jmeter界面创建用户场景更加便捷-----jmeter的树形结构直观的展现了脚本的层次,通过逻辑组件也更加容易组织和编辑脚本,并且也可以将你需要的复杂用户场景进行编码化。
- LR有非常强大的分析能力,但是事实上我发现我需要的90%内容jmeter都可以带给我,同时我也可以把他的测试数据保存在DB、文件里,使用通过awk命令或者excel得到想要的数据。
- 我可以通过命令行执行jmeter。
- jmeter本身是个轻量级工具,意味着我可以仅仅使用5秒时间就将他安装在一台新电脑上。
- jmeter也是便携的,30Mb的大小可以随身携带。只要有java的地方就通行无阻。
- 用过LR的人很多情况下都被限于内置函数,而jmeter的灵活性不言而喻。例如正则表达式,LR里的web_reg_save_para仅仅是一个被缩水的东东,获取的东西无法分组处理
- jmeter对于用户来说不需要有license的顾虑,可以放心大胆使用,一切都是free
- jmeter的debug功能是如此简单、有用
- 在jmeter里操作数据库也是如此的简单,但LR很复杂
- 如果我使用jmeter,我不需要使用windows......听上去很另类,但是我测试95%的东西都是在linux上运行。
- LR的recording log没有jmeter的查看结果树那样的清晰的展示response code、header、url、response等信息
- 持续集成,这4个字大家一定不陌生,对于已经封装好LR集成到jenkins或者Hudson上一定难度比jmeter大的多,而且告诉各位jenkins上已经准备了插件为大家使用带来了福利
列举了那么多,大家一定对jmeter呼之欲出,下面我将对其使用一一道来
时间: 2024-11-06 21:22:36