1.简介 前边三十多篇文章主要介绍的是Jmeter的一些操作和基础知识,算是一些初级入门的知识点,从这一篇开始我们就来学习Jmeter比较高级的操作和深入的知识点了.今天这一篇主要是讲参数化,其实前边或多或少的介绍过类似的知识点,知识没有系统的讲解,由于这个在实际工作中用到比较多而且经常用到,所以宏哥今天将其单独作为一个主题来系统的讲解. 尤其是在用到jmeter工具时,无论做接口测试还是性能测试,参数化都是一个必须掌握且非常有用的知识点.参数化的使用场景,例如: 1)多个请求都是同一个ip地址…
1.简介 在性能测试中,有时需要模拟一种实际生产中经常出现的情况,即:从某个值开始不断增加压力,直至达到某个值,然后持续运行一段时间,然后继续加压达到某个值持续运行,如此循环直到达到预期的峰值,运行一段时间. 在jmeter中,有这样一个插件,可以帮我们实现这个功能,这个插件就是:Stepping Thread Group ,也就是常说的步长插件. 2.测试准备 Stepping Thread Group是jmeter插件的一种,其作用就是模拟实际的生产情况,不断对服务器施加压力,直至到某个值,…
1.简介 前边一篇文章介绍了如何生成测试报告,细心地小伙伴或者同学们可以看到宏哥启动Jmeter生成测试报告不是在gui页面操作的,而是在gui页面设置好保存以后,用命令行来生成测试报告的.这一篇宏哥就详细的介绍一下为什么用命令行而不是GUI,以及启动时的一些参数的含义. 2.为什么要命令行执行脚本? 本文介绍如何从命令行运行JMeter,那么宏哥先来说说,为什么要命令行执行脚本,日常测试过程中发现,在大数量并发时,jmeterGUI界面时长宕机.卡死,在这种情况下我们就需要使用命令行来执行脚本…
1.简介 上一篇中介绍了如果想要同时发送多条请求,那么怎样才能让每条数据某些请求参数改变呢.这就用到了jMeter参数化.在实际测试场景中,我们往往还有这样的需求,登录后服务器响应的token作为下次请求的参数,这就是所谓的参数关联. 当请求之间有依赖关系,比如一个请求的入参是另一个请求返回的数据,这时候就需要用到关联处理,Jmeter可以通过"后置处理器"中的"正则表达式提取器"来处理关联. 关联是Jmeter工具中非常重要的一个技术.因为在测试过程过有些数据是经…
1.简介 上一篇宏哥已经介绍了如何在Linux系统中安装Jmeter,想必各位小伙伴都已经在Linux服务器或者虚拟机上已经实践并且都已经成功安装好了,那么今天宏哥就来介绍一下如何在Linux系统下运行Jmeter脚本. 2.具体步骤 2.1创建Jmeter测试脚本 你要在Linux系统中运行Jmeter脚本首先要有Jmeter.在Windows系统中启动jmeter,创建Jmeter测试脚本,这里宏哥以访问我博客首页为例 1.启动Jmeter后,添加线程组,如下图所示: 2.选中"线程组&qu…
1.简介 为什么宏哥要对Jmeter的配置文件进行一下讲解了,因为有的童鞋或者小伙伴在测试中遇到一些需要修改配置文件的问题不是很清楚也不是很懂,就算修改了也是模模糊糊的.更有甚者觉得那是禁地神圣不可轻犯不敢触碰不敢修改,害怕修改错了Jmeter运行不了了.听宏哥的大胆修改大不了再重新安装一个新的Jmeter,或者你有做备份的好习惯,在修改前备份好以后大胆修改,修改错了直接使用备份文件恢复过来就可以. 2.配置文件 在%JMETER_HOME%\bin(or $JMETER_HOME/bin)目录…
1.简介 在性能测试中为了真实模拟用户请求,往往我们需要让提交的表单内容每次都发生变化,这个过程叫做参数化.JMeter配置元件与前置处理器都能帮助我们进行参数化,但是都有局限性,为了帮助我们能够更好地进行参数化,JMeter提供了一组函数来帮助我们参数化生成需要的数据,这些函数可以函数助手面板来进行编辑.当然函数助手的功能不仅仅是做参数化,还能帮助我们运算.字符编码格式转换.获取运行时参数等功能.下面宏哥介绍和分享一下函数助手中的函数. JMeter提供了很多函数,如果能够熟练使用,可以为脚本…
1.简介 这一篇文章,宏哥主要想讲解一下,录制完脚本不是就完事了,我们有时候还需要断言,看结果是否和我们预期的结果一致.这在测试中都是很重要的.用句老话说:只看结果不看过程. 2.录制脚本 想要断言,我们就必须的有脚本,才能断言,没有脚本我们就无法断言,因此这里我们还是需要录制脚本.再废话一句:Jmeter录制脚本多采用Badboy工具,很少使用其自带的录制,虽然badboy现在不维护了,但是宏哥还是极力推荐badboy. 2.1录制场景 宏哥大致描述一下录制场景:打开浏览器输入搜狗网址,并访问…
1.简介 这篇文章其实很简单,就是为下一篇文章做一个铺垫,所以宏哥给小伙伴或童鞋们提前热身一下. 2.什么是远程运行? 远程执行,就是脚本放在本地,执行却在另一台电脑上执行,当然,可以是远程多台电脑一起执行.最常见的场景就是,跑性能测试的时候,一台电脑负载不起需要的线程时,就需要两台或者更多的电脑来启动线程跑测试,线程就相当于是虚拟用户.在网上,通常会说,超过1000个线程时,就不要使用一台电脑跑了,而是选择使用多台电脑一起负载.这个说法并不全对,比如,脚本就写一条insert语句,往数据库中插…
1.简介 之前分享的所有文章都是只有一个线程组,而且参数的传递也只在一个线程组中,那么如果需要在两个线程组中传递参数,我们怎么做呢?宏哥今天就给小伙伴或者童鞋们讲解一下,如何实现在线程组之间传递参数. 2.什么是jmeter之跨线程组传递参数 顾名思义就是:使用jmeter工具在两个或者两个以上的线程组之间传递参数. 3.为什么在线程组之间传递参数? 首先往往我们接到一个性能测试任务需要对某一个接口进行压测时不需要每一次请求都取登录(如果每次都登录这样就会影响测试结果),那么遇到这种情况我们就要…