Jmeter之基本介绍
初学Jmeter,以下是我常用的功能,总结一下。
1、Thread Group线程组
线程组,即:虚拟用户组
名称:随意起啦,自己喜欢就好。
线程数:设置虚拟用户数。
Ramp-Up Period(in seconds):设置时间,即:在此段时间内创建出你所设置的所有虚拟用户数。
循环次数:1个线程跑多少次测试。(若勾选“永远”,则会一直循环下去)
调度器(Scheduler):配置启动时间。
持续时间:设置此次测试跑多久。
启动延迟:延迟X秒后,启动测试。
启动时间-结束时间:设置此次测试在固定的时间段内跑起。
2、Synchronizing Timer(并发)
(因Jmeter按树状结构执行,故通常将并发放置于请求之前)
Number of Simulated Users to Group by:模拟多个线程(用户)在同一时刻向服务器发出请求。(又称集合点、同步点)
(若置0:则等同于设置所有线程同时并发。)
Timeout in milliseconds:等待时间(毫秒),即:若此时的线程数还不到并发数,等待X毫秒后(不管此时的线程数是否达到并发数值),释放剩余的线程。
(若置0且线程数无法达到并发数值,则Timer就会无限等待下去,除非手动终止)
注:设置的并发数不应大于此次线程中包含的用户数
3、Http Request(请求)
搞一哈博客的压测
→_→
http://www.cnblogs.com/bigshan-1/
服务器名称或IP:服务器地址
端口号:
协议:http
方法:GET(主要是你所测的网页采取什么方法,你就用什么方法。不知道就F12看一哈)
路径:地址中域名后的部分
Parameters参数:key-value成对的参数值
Body Data:①直接填入数据;②或者从文本中读取,则格式:${ }花括号中填写变量名→变量即为你从文本中读取的数据,给其新定义一个名字
4、CSV Data Set Config
利用Jmeter的http请求的时候,如果我们要添加不同的数据,而每一条数据都不一致,我们将每一天数据作为一个测试用例,则我们可能需要为每个测试用例建立一个http请求,十分麻烦,比如,就登录来说,有用户,密码,每个用户的用户名,密码都不一致,如果我们要建立多个用户登录的请求,每个用户使用不同的用户名和密码,我们可能要将每个用户名单独作为一个http请求,这样十分不方便。
我们是否可以将所有的用户名和密码写入一个文件,然后将http请求中的用户名和密码参数化,读取写有用户名和密码的文件呢?
利用Jmeter的CSV Data Set Config,可以实现这个功能,具体如下:
①新建一个文本文件,里面保存要登录的用户名,密码,文件内容如下:
admin,123
manager,456
test,test
注:这里用英文逗号为分隔符,也可以用其他为分隔符,在CSV Data Set Config中可以设置。
②

Filename:csv文件的名称(包括绝对路径),如下图就是指放在桌面上的test2.txt文件
Variable Names(comma-delinited):这个就是给从csv文件中读取的变量定义一个名字。
(如:有几个参数,在这里面就写几个参数名称,每个名称中间用分隔符分割,分隔符在下面的“Delimitet”中定义,为了和文件中的“,”对于,这里也用“,”分割每个参数名,(比如:use,password)
(用于Body Data中)如:

Delimiter(use '\t' for tab):分隔符,csv文件中的分割符,默认状态是逗号,下图则是定义了“$$$”为test2.txt文件中的分割符。
(此举就是为了区分数据内部存在与分割符一致的元素时造成的混淆)
Recycle on EOF:是否循环读入,因为CSV Data Set Config一次读入一行,分割后存入若干变量中交给一个线程,如果线程数超过文本的记录行数,那么可以选择从头再次读入 。

5、Aggregate Report(聚合报告)

线程组、并发等都配置完成后,将测试跑起来,点击绿色的那个。
运行结果如下表:
Label:此次请求的名称
#Samples:表示你这次测试中一共发出的请求数。若模拟了200个用户,循环10次,则此为200*10=2000
Average:平均响应时间,默认情况下是指单个Request的平均响应时间,当使用了 Transaction Controller 时,也可以以Transaction 为单位显示平均响应时间
Median:中位数,也就是 50% 用户的响应时间
90% Line:90% 用户的响应时间
95% Line:95% 用户的响应时间
99% Line:99% 用户的响应时间
Min:最小响应时间
Max:最大响应时间
Error%:本次测试中出现错误的请求的数量/请求的总数
Throughput:吞吐量——默认情况下表示每秒完成的请求数(Request per Second),当使用了 Transaction Controller 时,也可以表示类似 LoadRunner 的 Transaction per Second 数
KB/Sec:每秒从服务器端接收到的数据量,相当于LoadRunner中的Throughput/Sec

Jmeter之基本介绍的更多相关文章
- Jmeter应用初步介绍
一.工具介绍 Apache JMeter是Apache组织开发的基于Java的压力测试工具.用于对软件做压力测试,它最初被设计用于Web应用测试,但后来扩展到其他测试领域. 它可以用于测试静态和动态资 ...
- JMeter主要组件介绍
JMeter主要组件介绍 转自https://www.cnblogs.com/linbo3168/p/6023962.html 作者:linbo.yang 1.测试计划(Test Plan)是使用 ...
- Jmeter的简单介绍
Apache JMeter是Apache组织开发的基于Java的压力测试工具.用于对软件做压力测试,它最初被设计用于Web应用测 试但后来扩展到其他测试领域. 它可以用于测试静态和动态资源例如静态文件 ...
- Jmeter系列(2)- Jmeter工具介绍、Jmeter安装目录介绍、Jmeter面板介绍
如果你想从头学习Jmeter,可以看看这个系列的文章哦 https://www.cnblogs.com/poloyy/category/1746599.html Jmeter支持哪些测试场景? Jme ...
- Jmeter系列(3)- Jmeter安装目录介绍
如果你想从头学习Jmeter,可以看看这个系列的文章哦 https://www.cnblogs.com/poloyy/category/1746599.html Jmeter安装目录说明 bin:包含 ...
- 转 2 jmeter常用功能介绍-测试计划、线程组
2 jmeter常用功能介绍-测试计划.线程组 1.测试计划测试用来描述一个性能测试,所有内容都是基于这个测试计划的. (1)User Defined Variables:设置用户全局变量.一般添 ...
- jmeter工作目录介绍、jmeter元件及组件介绍
一.jmeter工作目录介绍: bin:放置各项配置文件(如日志设置.JVM设置).启动文件.启动Jar包.示例脚本等: docs:放置JMeter API的离线帮助文档: extras:JMeter ...
- 【jmeter】目录介绍
JMeter也学了一阵子了,对于基本的操作已了解,再回过头来看看Jmeter的目录,本篇是对于它的目录进行一些简单的介绍. JMeter解压之后打开,根目录如下图: 1.bin:可执行文件目录 2.d ...
- JMeter的基本介绍和入门
1. 介绍 JMeter是Apache组织的开放源代码项目,能做功能测试和性能测试.它能够对HTTP和FTP服务器进行压力和性能测试,也可以对任何数据库进行同样的测试(通过JDBC),还能以多种形式展 ...
- jmeter(二十一)jmeter常用插件介绍
jmeter作为一个开源的接口性能测试工具,其本身的小巧和灵活性给了测试人员很大的帮助,但其本身作为一个开源工具,相比于一些商业工具(比如LoadRunner),在功能的全面性上就稍显不足. 这篇博客 ...
随机推荐
- Visual Studio 2013发布Cloud Service至Azure China
Visual Studio 2013发布Cloud Service至Azure China <Windows Azure Platform 系列文章目录> 之前有很多网友询问我如何通过VS ...
- 一个ERP系统的磕磕碰碰
历时5个月的开发,终于可以交付使用了.在这期间系统从需求分析.系统架构设计.开发.测试.运行.迭代.交付,整个忐忑波荡的一路走来,终于有时间静下心来写一篇总结跟各位博友一起探讨.学习了.如果对大家有帮 ...
- C语言练习-学生信息管理系统
题目要求: 学生信息管理系统struct studentInfo{ int id; char name[128]; int age; char sex; int c_score; int cpp_sc ...
- C++ 顺序容器 vector list deque 之比较
在C++标准库中定义了三种顺序容器类型:vector,list和deque.所谓顺序容器就是根据位置来存储和访问元素,元素的排列次序与元素的值无关,而是由元素添加到容器的次序决定的. vector的底 ...
- KTHREAD 线程调度 SDT TEB SEH shellcode中DLL模块机制动态
KTHREAD 线程调度 SDT TEB SEH shellcode中DLL模块机制动态获取 <寒江独钓>内核学习笔记(5) 继续我们的线程相关的数据结构的学习.接下来我们学习 KTH ...
- AspNet MVC3中过滤器 + 实例
AspNet MVC3中过滤器 + 实例 过滤器在请求管线注入额外的逻辑,提供简单优雅的方法实现横切点关注(AOP),例如日志,授权,缓存等应用.通过AOP可以减少在实际的业务逻辑中参杂过多非直接业务 ...
- 图解Javascript引用类型之数组
以图说事明理,恰当时候会事半功陪.今天我就尝试着用图的方式讲讲“JavaScript引用类型之数组”.望更多童鞋给我反馈! 好东西分享给大家,但要尊重事实!!!因此特别说明:本图非我本人亲自所作,乃我 ...
- C/C++ 中 const 修饰符用法总结
C/C++ 中 const 修饰符用法总结 在这篇文章中,我总结了一些C/C++语言中的 const 修饰符的常见用法,供大家参考. const 的用法,也是技术性面试中常见的基础问题,希望能够帮大家 ...
- c语言,字符串原地翻转
实现字符串的原地翻转: #include<stdlib.h> #include<stdio.h> #include<assert.h> #define SWAP(a ...
- OC-变量和数据类型
对象的初始化 Fraction *myFract=[[Fraction alloc] init];//初始化对象 [myFract setTo:1 over:3];//设置初始值 初始化对象和设置初始 ...