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)所发出的请 ...
随机推荐
- Invoke-Obfuscation混淆ps文件绕过Windows_Defender
前提 powershell只能针对win7之后的系统,之前的win操作系统默认没有安装powershell. 所在目录:C:\Windows\System32\WindowsPowerShell\v1 ...
- Mach-O简介及实际应用
一.前言 在正题开始之前,我们先来聊聊iOS中的hook技术.一谈到hook,很多人首先想到的是runtime,runtime确实强大,但是它存在很多局限性: 1).侵入性:一旦hook了某个类的 ...
- Alpha版本后的心得体会
Alpha版本后的心得体会 在我们一系列的努力之下,我们团队打造的校园互助式快递代取APP——U-Help的α版本终于能够问世了.尽管这个版本存在着这样那样的问题,但是我们还是对此抱有充足的信心.另一 ...
- TypeError: Object of type 'int32' is not JSON serializable
将模型用flask封装,返回json时报错:TypeError: Object of type 'int32' is not JSON serializable 网上搜索出的解决方案:重写json.J ...
- Codeforces 1167F 计算贡献
题意:给你一个函数f,计算∑(i = 1 to n)(j = i to n) f(i, j).f(i, j)的定义是:取出数组中i位置到j位置的所有元素,排好序,然后把排好序的位置 * 元素 加起来. ...
- [转载]MinGW安装过程
本文转自https://blog.csdn.net/my_wade/article/details/46941645 MinGW安装过程 一. 下载 MinGW官网下载地址:http://source ...
- 笔记65 Spring Boot快速入门(五)
SpringBoot+JPA 一.什么是JPA? JPA是Java Persistence API的简称,中文名Java持久层API,是JDK 5.0注解或XML描述对象-关系表的映射关系,并将运行期 ...
- day08 python文件操作
day08 python 一.文件操作 1.文件操作的函数 open(文件名, mode=模式, encoding=字符集) 2.模式: r, w, a, r+ ...
- Mysql安装多版本数据库
1.下载对应版本压缩包 2.解压缩文件 3.到解压缩文件,添加my.ini文件,修改相关的配置,如端口,文件路径等 # For advice on how to change settings ple ...
- @staticmethod和@classmethod区别
转载自: https://www.cnblogs.com/wyongbo/p/python_static_method.html https://www.cnblogs.com/champaign/p ...