JMeter学习篇(一):测试实例讲解
1.JMeter的下载与安装
Jmeter官方下载地址:http://jmeter.apache.org/download_jmeter.cgi,下载jmeter是一个zip压缩包,解压后,直接运行apache-jmeter-2.9\bin目录下的jmeter.bat文件。
2.测试实例
Get请求:
URL : https://zh.wikipedia.org/w/index.php?title=Special:搜索&profile=default&fulltext=Search&search=general&searchToken=2iim1utydlw71vdjezf4mj5t4
(1)添加线程组:

在线程组中可以定义两种性能测试方式:
1.线程数+每个线程的执行次数(通常用于执行性能测试)
2.线程数+启动时间和结束时间(通常用于执行稳定性测试)

Number of Threads(users): 一个用户占一个线程,20个线程就是模拟20个用户。
Ramp-Up Period(in seconds):设置线程需要多长时间全部启动。如果线程数为20 ,准备时长为1 ,那么需要1秒钟启动20个线程。也就是每秒钟启动20个线程。
Loop Count:每个线程发送请求的次数。如果线程数为20,循环次数为100 ,那么每个线程发送100次请求。总请求数为20*100=2000 。如果勾选了“永远”,那么所有线程会一直发送请求,直到选择停止运行脚本。
调度器中可以设置测试的执行时间,指定结束时间后,循环次数条件会失效,每个线程都会循环运行,知道满足结束时间为止。
(2)添加HTTP请求:
添加完成线程组后,在线程组上右键菜单(添加--->Sampler--->HTTP请求)选择HTTP请求。对于jmeter来说,取样器(Sampler)是与服务器进行交互的单元。
将请求url:https://zh.wikipedia.org/w/index.php?title=Special:搜索&profile=default&fulltext=Search&search=general&searchToken=2iim1utydlw71vdjezf4mj5t4做分隔处理
Host:zh.wikipedia.org
请求路径:w/index.php
请求参数:title=Special:搜索,profile=default,fulltext=Search,search=general,searchToken=2iim1utydlw71vdjezf4mj5t4
依次将上述参数填入指定选项框中,如下图所示:

(3)添加监听器:
Jmeter中使用监听器元件手机取样器记录的数据并以可视化的方式呈现,Jmeter有各种不同的监听器类型,因为上HTTP请求,我们可添加聚合报告和查看结果树两种监听类型,更为直观的查看测试结果。


启动请求结果展示:
通过查看结果树元件可以查看具体每一条的请求url,响应数据结果等信息。


聚合报告结果:

至此,一个简单的性能测试就完成了,但是考虑到这种方式,每个请求的发送都要通过建立网络连接、vpn连接等过程,最终的结果会有一定的误差,所以,如果能把它放在服务器上运行,会得到更准确的结果。
保存测试计划,会以一个.jmx文件存储,该文件里面保存了所有上述的元件以及参数配置,将此.jmx文件放在bin目录下,并将Jmeter整个工程拷入服务器中(拷入一个与测试机相通的服务器,如果直接拷入测试机,在测试过程中会给测试机本身带来压力,影响测试结果)。
cd 到Jmeter的bin目录下,通过如下命令运行jmeter,并生成.jtl文件
./jmeter.sh -n -t TpsLimit.jmx -l test.jtl
原文出处:http://qa.blog.163.com/blog/static/190147002201682614648545/
JMeter学习篇(一):测试实例讲解的更多相关文章
- JMeter学习-022-JMeter 分布式测试(性能测试大并发、远程启动解决方案)
在使用 JMeter 进行性能测试时,难免遇到要求并发请求数比较的场景,此时单台测试机的配置(CPU.内存.带宽等)可能无法支持此性能测试场景.因而,此时 JMeter 提供的分布式测试功能就有了用武 ...
- JMeter学习-010-JMeter 配置元件实例之 - CSV Data Set Config 参数化配置
众所周知,在进行接口测试的过程中,需要创建不同的场景(不同条件的输入,来验证不同的入参的返回结果).因而,在日常的自动化接口监控或商品监控等线上监控过程中,需要配置大量的入参来监控接口的返回是否正确. ...
- JMeter学习-014-JMeter 配置元件实例之 - 用户定义的变量 参数化配置
前文讲述了通过 CSV Data Set Config 实现参数化配置(详情敬请参阅:JMeter学习-010-JMeter 配置元件实例之 - CSV Data Set Config 参数化配置), ...
- Jmeter-接口测试实例讲解
一.测试需求描述 1. 本次测试的接口为http服务端接口 2. 接口的主要分成两类,一类提供给查询功能接口,一类提供保存数据功能接口,这里我们举例2个保存数据的接口,因为这两个接口有关联性,比较有代 ...
- JMeter学习-012-JMeter 配置元件之-HTTP Cookie管理器-实现 Cookie 登录
前文我们讲过了若何获取登录后的 Cookie 信息,不知如何获取登录 Cookie 的朋友,敬请参阅我之前写的博文:Fiddler-005-获取 Cookie 信息.参阅上篇文章,获取到 Cookie ...
- JMeter学习-011-JMeter 后置处理器实例之 - 正则表达式提取器(三)多参数获取进阶引用篇
前两篇文章分表讲述了 后置处理器 - 正则表达式提取器概述及简单实例.多参数获取,相应博文敬请参阅 简单实例.多参数获取. 此文主要讲述如何引用正则表达式提取器获取的数据信息.其实,正则表达式提取器获 ...
- JMeter学习-026-JMeter 分布式(远程)参数化测试实例
以前文所述对文章详情的HTTP请求进行性能测试为例.日常实际场景中,不可能所有的人都在同时访问一篇文章,而是多人访问不同的文章,因而需要对文章编号进行参数化,以更好的模拟日常的性能测试场景.同时,因文 ...
- JMeter学习-009-JMeter 后置处理器实例之 - 正则表达式提取器(二)多参数获取
前文简述了通过后置处理器 - 正则表达式提取器 获取 HTTP请求 响应结果中的特定数据,未看过的亲,敬请参阅 JMeter学习-008-JMeter 后置处理器实例之 - 正则表达式提取器(一). ...
- JMeter学习-007-JMeter 断言实例之一 - 响应断言
之前的文章中已经对如何录制 web 的请求进行了详细的描述,敬请参阅:JMeter学习-004-WEB脚本入门实战 同时,我们的手机应用(例如:京东.天猫.唯品会.携程.易迅 等等 App)所发出的请 ...
随机推荐
- postgresql 取出分组中最大的几条数据
WITH Name AS ( SELECT * FROM ( SELECT xzqdm, , ) xzdm, COUNT (*) sl FROM sddltb_qc WHERE xzqdm ') GR ...
- Leetcode 200.岛屿的数量 - DFS、BFS
Leetcode 200 岛屿的数量: DFS利用函数调用栈保证了检索顺序, BFS则需要自己建立队列,把待检索对象按规则入队. class Solution { // DFS解法,8ms/10.7M ...
- 爱的传送带: print(.format())
场景:用Python设计一个程序,可以打印一下祝福语: 致某某某: 今年是XXXX年的元旦, 我的祝福送四方, 东方送你摇钱树, 西方送你永安康, 南方送你成功路, 北方送你钱满 ...
- propTypes和 defaultProps
propTypes和 defaultProps propTypes: 可以 用来做类型的校验 限制类型 isRequired 必须要求传递 要使用必须先引入: import PropTypes fro ...
- oracle查询重复数据出现次数
话不多数上代码: 我在Oracle数据库查数据,发现重复数据,于是我想把重复条数以及具体数据查出来: 下面是数据 然后我需要知道重复多少条 (重复十条,也就是有五条数据相同) SQL: select ...
- Delphi 打印纸张选项设置参数
{ paper selections } {$EXTERNALSYM DMPAPER_LETTER} DMPAPER_LETTER = 1; { Letter 8 12 x 11 in } {$EXT ...
- (一)CGI (通用网关接口) 简介
CGI (通用网关接口)公共网关接口(Common Gateway Interface,CGI)是Web 服务器运行时外部程序的规范,按CGI 编写的程序可以扩展服务器功能.CGI 应用程序能与浏览器 ...
- C#接口的作用实例解析
一.接口的作用: 我们定义一个接口: public interface IBark { void Bark(); } 1. 再定义一个类,继承于IBark,并且必需实现其中的Bark()方法 pub ...
- SQL 删除
SQL Delete 语句(删除表中的记录) DELETE语句用于删除表中现有记录. SQL DELETE 语句 DELETE 语句用于删除表中的行. SQL DELETE 语法 DELETE FRO ...
- 阿里云智能推荐AIRec产品介绍
一.智能推荐(AIRec)简介 AIRec背景介绍 智能推荐(简称AIRec)基于阿里巴巴集团领先的大数据和人工智能技术,结合阿里巴巴在电商.内容.新闻.视频直播和社交等多个行业领域的积累,为全球企业 ...