企业应用开发过程中,性能测试是很重要的一个环节,在这个环节中Apache的JMeter以它开源.100%纯Java.操作方便等优点发挥着很大的作用. 经过一段时间的使用,多少有些心得和技巧,拿出来共享,希望能有些帮助. 1.制作测试脚本: 手工制作测试脚本,需要你知道请求的url和携带的参数等等,太花费时间. 所以可以用badboy工具录制脚本.这个工具虽然不是开源的,但是却可以用来免费的录制成.jmx的脚本,使用起来很方便. 官方网站是:http://www.badboy.com.au/ 2.…
上周刚刚做完项目的性能测试.今天整理和总结一下,随便分享给大家. 首页呢,测试前,我们是有明确的性能指标的,而且测试环境和数据都已准备好,业务分析.场景分析大家根据自己的项目系统进行分析设计,我们选用的都是实际用户操作频繁.重要级别高的.还有一个好说明下,今天分享的是Jmeter做APP端的单接口性能测试.下面开始分享吧. 先贴一张我的脚本: 第一步,环境是运维搭建好,那我们只需要准备脚本和脚本数据.从上面的图中可以看出,我们需要准备: 1.需要开发帮忙去掉系统中的手机验证码.token的校验,…
一.安装Jmeter 1.上传Jmeter压缩包到Linux服务器,如:/opt目录下 2.解压缩 unzip apache-jmeter-3.1.zip 3.配置环境变量:vi /etc/profile 末尾加入: export JMETER_HOME=/opt/apache-jmeter-3.1export PATH=$JMETER_HOME/lib/ext/ApacheJMeter_core.jar:$JMETER_HOME/lib/jorphan.jar:$JMETER_HOME/lib…
https://octoperf.com/blog/2017/10/19/how-to-analyze-jmeter-results/ 看到性能测试平台的开发,我在想需要什么功能,报表需要什么样子的 https://help.aliyun.com/document_detail/29337.html?spm=5176.7946858.1368709.6.2f99572d1bg6bj 以上链接是阿里云的性能测试平台,支持多种方式 https://blog.codecentric.de/en/201…
在Win机器上用Jmeter做性能测试,汇总下我自身遇到的错误和解决方案 java.net.BindException: Address already in use: JVM_Bind 原因分析:压测服务器问题,由于并发太高,导致自身port不够用,需要调整机器的端口,可用netstat -ano看出来:去掉下面的/c查看详细端口占用 定位: netstat -ano | find "10.215.70.172:443" | find "ESTABLISHED"…
今天下班时公司安排了一个同事来对项目做集群性能测试,怀着对性能测试的好奇心,下班后没有着急离开,而是等待 那位同事的到来,然后在旁边学习了下如何使用Badboy和jmeter做性能测试. 1. 软件介绍 1.1 Badboy Badboy,第一眼看见这个单词,以为是坏孩子的意思,后来一想,它是专门用来给项目找茬来的,取名为Badboy 倒是平添了几分可爱,呵呵. Badboy是用来录制操作过程的,它录制的结果是被jmeter做并发测试的素材使用. Badboy首页:http://www.badb…
经过上一次的初步使用,我们懂得了Jmeter的安装与初步使用的方法.现在,我们使用Jmeter做一个简单的性能测试.该次测试,提交的参数不做参数化处理,Jmeter各元件使用将在介绍在下一博文开始介绍并使用. 首先,打开Jmeter工具,并建立一个测试计划(测试脚本).启动jmeter后,jmeter会自动生成一个空的测试计划,我们可以基于该测试计划建立自己的测试计划. 步骤: 步骤一:添加线程组 一个性能测试请求负载是基于一个线程组完成的.一个测试计划必须有一个线程组.测试计划添加线程组非常简…
一.为什么又再次写类似的文章? 在博客园和公号写文章,已经快两年了,所以自然在公号和博客园都能联系到我的. 也就是几天前,有个人加我微信,对于总有人加我好友,我已经觉得不奇怪了,为什么呢? 加我好友的一般为几类: 微商,你一看朋友圈,各种商品广告,哇,好头疼 “大佬,有学习视频资料吗?”,有,200,需要吗? “进群”,我知道你谁呀,干啥的,上来就进群呀. 但这个同学,挺有意思的,是一个关注我公号很久的一个粉丝,总会看我的文章.和我说了下他的情况,也是个自学党,问我有老师讲jmeter课程吗?想…
1 安装并配置Jmeter Jmeter的安装不在这里阐述,安装步骤非常简单. 直接进入主题 1.1 数据库连接配置 由于测试过程需要调用数据库获取响应部署数据,因此需要先建立与数据库的连接. 如果不涉及数据操作,可以跳过此步骤. 步骤1:打开jmeter开源性能测试工具,测试计划->添加线程组 步骤2:添加jdbc request请求 –>添加JCBC connection Configuration 数据库连接配置 步骤3:配置jdbc request请求,添加sql查询语句 举例Sql语…
本文我们一起来学习在Linux(Mac)上利用Jmeter进行性能测试并生成测试报告的方法. 环境准备 JDK 访问这个地址 [JDK11.01],根据实际环境下载一个JDK. Jmeter Jmeter 5.0:https://jmeter.apache.org/download_jmeter.cgi 建议下载zip绿色版本 环境变量 因为博主使用的是dmg安装包,安装时已自动完成环境变量配置,其他linux环境可能需要手动完成,输入命令vim /etc/profile ,添加下面的内容,保存…
本篇文章主要讲解jmeter如何测试java请求,以项目中某个接口为例,请求数据为post,返回也为post 1:新建maven工程,pom文件为 <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/…
Jmeter除了可以做接口测试外,还可以做性能测试.在 Jmeter中做性能测试,需要做如下相关设置 图片中有10个线程,Ramp-Up Period(in seconds)=1,那么线程的启动时间间隔为1/10=0.1秒,换算成毫秒就是100毫秒 一般进行性能压测时,压测的时间是10-15分钟 ,TPS表示服务端每秒处理的事务数,事务数越大越好,表示服务器的处理能力越强,响应时间,越短越好,表示应用程序服务器,数据库服务器处理能力强,网速快. 一般性能测试前,需要把具体的性能指标给到测试人员,…
在使用Jmeter进行性能测试时,如果并发数比较大(比如最近项目需要支持1000并发),单台电脑的配置(CPU和内存)可能无法支持,这时可以使用Jmeter提供的分布式测试的功能. 一.Jmeter分布式执行原理: 1.Jmeter分布式测试时,选择其中一台作为调度机(master),其它机器做为执行机(slave). 2.执行时,master会把脚本发送到每台slave上,slave 拿到脚本后就开始执行,slave执行时不需要启动GUI,我理解它应该是通过命令行模式执行的. 3.执行完成后,…
参考:https://blog.csdn.net/russ44/article/details/54729461 Jmeter进行性能测试时多台负载机的配置方法 Jmeter 是java 应用,对于CPU和内存的消耗比较大,因此,当需要模拟数以千计的并发用户时,使用单台机器模拟所有的并发用户就有些力不从心,甚至会引起JAVA内存溢出错误.为了让jmeter工具提供更大的负载能力,jmeter短小精悍一有了使用多台机器同时产生负载的机制. 那么,是如何实现多台负载机同时运行的呢?当然不会多个人坐在…
利用Jmeter做功能测试有以下优点: ●    不依赖于界面,如果服务正常启动,传递参数明确就可以添加测试用例,执行测试 ●    测试脚本不需要编程,熟悉http请求,熟悉业务流程,就可以根据页面中input对象来编写测试用例 ●    测试脚本维护方便,可以将测试脚本复制,并且可以将某一部分单独保存 ●    可以跳过页面限制,向后台程序添加非法数据,这样可以测试后台程序的健壮性 ●    利用badboy录制测试脚本,可以快速的形成测试脚本 ●    Jmeter断言可以验证代码中是否有…
JMeter测试步骤: 1.建立测试计划 2.添加线程组 3.添加HTTP请求 4.增加监听器 5.执行测试计划 6.根据JMeter提供的报告分析结果 一.目标 测试访问目标服务器网站首页的每秒查询率(QPS)是否满足要求 二.步骤 1.建立JMeter的测试计划(Test Plan): 在JMeter中性能测试的所有内容是基于测试计划的. 2.添加线程组: 性能测试中多用户就是通过多线程实现的. 主要参数: a.线程数 ==>模拟的用户数 b.准备时长 ==>模拟用户数全部启动需要的时间…
1.打开Jmeter,新建一个线程组:测试计划--添加--Threads(users)---线程组 如图: 2.首先要添加一个HTTP默认请求,为什么要添加这个呢? 如果要测试的系统域名或者IP地址是不变的,每次添加HTTP请求都要配置一次域名或IP地址是不是很麻烦呢,用HTTP默认请求的话,该线程下所有的HTTP请求就默认使用保存在HTTP默认请求里的信息了,就不用一个个的去配置了 3. HTTP Cookie管理器 此处增加一个cookie管理,无需做任何变更,脚本会自动记录cookie并跟…
Jmeter介绍&测试准备: Jmeter介绍:Jmeter是软件行业里面比较常用的接口.性能测试工具,下面介绍下如何用Jmeter做接口测试以及如何用它连接MySQL数据库. 前期准备:测试前,需要安装好Jmeter以及jdk并配置好jdk环境变量. JDK下载地址:http://www.oracle.com/technetwork/java/javase/downloads/index.html Jmeter下载地址:http://jmeter.apache.org/download_jme…
线程组:用来设置并发的数量和模式.是用来模拟用户并发的组件.JMeter 的每个任务都是用线程来处理的. 线程数:要并发的请求数量. Ramp-Up Period: 在多次时间内把这些并发的请求发送完,单位秒 循环次数:这些并发一共要循环测试多少次 调度器: 启动时间:测试计划什么时候启动,启动延迟会覆盖它.当启动时间已过,手动运行脚本时当前时间也会覆盖它(但启动时间页面显示不会变). 结束时间:测试计划什么时候结束,持续时间会覆盖它. 持续时间(秒):测试计划持续多长时间,会覆盖结束时间. 启…
jmeter自带了拦截request的功能,并且也有对应的tool:badboy 可以用.但由于我经常做移动端的项目,个人还是习惯用fiddler来收集request. 官网下载并安装Fiddler 抓取PC上的http/https请求 1.开启https抓包选项 2.浏览器访问http://127.0.0.1:8888/fiddler,下载证书并安装 3.访问网页,可以抓到https请求 抓取移动设备上的http/https请求 1.开启remote抓包选项 2.移动端安装证书 把移动设备和安…
学习使用Jmeter做压力测试(一)--压力测试基本概念 一.性能测试的概念 性能测试是通过自动化的测试工具模拟多种正常峰值及异常负载条件来对系统的各项性能指标进行测试.负载测试和压力测试都属于性能测试,两者可以结合进行. 通过负载测试,确定在各种工作负载下系统的性能,目标是当负载逐渐增加时,测试系统各项性能指标的变化情况.压力测试时通过确定一个系统的瓶颈或者不能接受的 性能点,来获取系统能提供的最大服务级别的测试.性能测试主要包括负载测试.强度测试.容量测试. 二.性能测试的指标 web服务器…
jmeter做接口测试有两种方式: 1. 2.…
博客搬到了fresky.github.io - Dawei XU,请各位看官挪步.最新的一篇是:用BenchmarkDotNet给C#程序做性能测试.…
博客搬到了fresky.github.io - Dawei XU,请各位看官挪步.最新的一篇是:针对C#程序做性能测试的一些基本准则.…
使用JMeter做压力测试 1.下载Jmeter 地址:http://jmeter.apache.org/download_jmeter.cgi 2.启动jmeter 运行bin/jmeter.bat 3.添加线程组 在TestPlan节点上右键,Add-->Threads(Users)-->Thread Group. Number of Threads (Users):要模拟的并发用户量.Ramp Up Period (in seconds):在多长时间内均匀启动所有的线程.比如Number…
jenkins+ant+jmeter自动化性能测试平台 Jmeter是性能测试的工具,java编写.开源,小巧方便,可以图形界面运行也可以在命令行下运行.网上已经有人使用ant来运行,http://www.programmerplanet.org/projects/jmeter-ant-task/,既然可以使用ant运行,那和hudson.jenkins集成就很方便了,而且jenkins上也有相应的插件Performance Plugin,可以自动收集jmeter的测试结果,展示出来. 首先去下…
sysbench的安装和做性能测试 http://imysql.cn/node/312 sysbench是一个模块化的.跨平台.多线程基准测试工具,主要用于评估测试各种不同系统参数下的数据库负载情况. 关于这个项目的详细介绍请看:http://sysbench.sourceforge.net. 它主要包括以下几种方式的测试: 1.cpu性能 2.磁盘io性能 3.调度程序性能 4.内存分配及传输速度 5.POSIX线程性能 6.数据库性能(OLTP基准测试) 目前sysbench主要支持 MyS…
测前准备 用JMeter做接口的压测非常方便,在压测之前我们需要考虑这几个方面: 场景设定 场景分单场景和混合场景.针对一个接口做压力测试就是单场景,针对一个流程做压力测试的时候就是混合场景,需要多个接口共同作用. 压测时间设定 通常时间设为10 – 15 分钟,如果涉及疲劳测试的话时间可根据实际情况设定,1周,一个月不等. 测试数据准备 如果需要测试的数据量很大的话,需要造数据,造数据可以JMeter操作数据库来完成,也可以用Python造数据. 结果查看 之后便可以按照你的设定来直行压力测试…
JMeter对各种类型接口的测试 默认做接口测试前,已经给出明确的接口文档(如,http://test.nnzhp.cn/wiki/index.php?doc-view-59):本地配好了JMeter 3.x的运行环境: 打开JMeter,添加一个线程组和该线程组的查看结果树.以下的几种接口请求我们都在这个线程组中添加和运行. 如果你的JMeter返回数据是乱码,解决办法是,在JMeter安装路径的bin目录下,打开文件jmeter.properties,把Sampleresult.defaul…
Jmeter是性能测试的工具,java编写.开源,小巧方便,可以图形界面运行也可以在命令行下运行.网上已经有人使用ant来运行,,既然可以使用ant运行,那和hudson.jenkins集成就很方便了,而且jenkins上也有相应的插件Performance Plugin,可以自动收集jmeter的测试结果,展示出来. 首先去下载jmeter,在2.8版本中测试通过,2.9版本测试未通过.下载ant-jmeter-1.1.1.jar放在jmeter主目录lib文件夹下. 下载需要的ant包,包含…