JMeter----安装与介绍以及简单页面录制和移动端录制

1.什么是JMeter?
2.JMeter的安装
3.JMeter基本使用
4.JMeter运行原理
5.JMeter录制脚本

1.什么是JMeter?

JMeter简介:

JMeter是Apache公司使用Java平台开发的一套测试工具。

JMeter可以做什么:

1.接口测试(最多)
2.性能测试
3.压力测试(最多)
4.数据库测试
5.java程序测试
都是基于接口的测试。性能、压力等等都是基于接口,测试数据库的性能,100%由java构成。

JMeter 优点

1.开源免费
2.支持多协议(http、tcp、udp)
3.轻量级(安装方便,功能强大)
4.功能强大

JMeter缺点

使用jmeter无法验证js程序,也无法验证页面ui,所以必须要和Selenium配合来完成web2.0应用的测试。

2.JMeter安装以及启动

1.由于全部由Java写成,所以需要Java的环境。
2.官网下载https://archive.apache.org/dist/jmeter/binaries/,Windows下载zip文件即可。也可以去官网下载最新版本
3.下载、解压到全英文路径下的目录
4.在解压过的文件中,bin目录下,jmeter.bat,点击即可打开(windows界面下启动jMeter方式)。
5.(Linux下启动Jmeter方式)则是启动jmeter.sh文件,同样是在bin目录下。

JMeter插件安装

JMeter插件安装地址:http://jmeter-plugins.org/install/Install/
下载这个jar包,安装在 lib/ext目录下。
在这里插入图片描述
所有的插件,都在这个插件管理中进行管理,但是下载之后,重启才能生效看到
在这里插入图片描述

3.JMeter常用目录介绍

在这里插入图片描述
不能使用GUI模式进行压力测试。GUI模式仅仅是用来创建和调试脚本。

目录介绍

在这里插入图片描述

bin目录******(重要)

在这里插入图片描述
example:一些例子。
jmeter.bat:windows下的启动文件。
jmeter.log:jmeter运行日志文件
jmeter.sh :Linux下的启动文件
jmeter.properties:jmeter系统配置文件(修改过,重启后才能生效)
jmeter-server.bat: windows分布式测试要用到的服务器
jmeter-server:linux分布式测试要用的服务器配置
一个启动文件、一个配置文件、一个分布式测试文件。
注意:其中系统配置文件中SSL设置重点关注如下几个:
指定HTTPS协议层(HTTPS就是HTTP+SSL)
https:default.protocol=TLS
指定SSL版本
https:default.protocol=SSLv3
设置启动的协议
https:default.protocols=SSLv2Hello SSLv3 TLSv1
缓存控制,控制SSSL是否可以在多个迭代中重用
https.use.cached.ssl.context=true

docs目录

接口文档目录。例如D:\jmeter\apache-jmeter-5.0\docs\api下的index.html,可打开api\index.html页面来查看。

extras目录

扩展插件目录,提供了对Ant的支持,可以使用Ant来实现自动化测试,例如批量脚本执行,产生html格式的报表,测试运行时,可以把测试数据记录下来,jmeter会自动生成一个.jtl文件,将该文件放到extras目录下,运行‘ant-Dtest=文件名 report’,就可以生成测试统计报表。

lib目录******(重要)

所用到的插件目录,里面均为jar包,jmeter会自动在jmeter_HOME/lib和ext目录下寻找需要的类,lib下存放的jmeter所以来的外部jar:如httpclient.jar、httpcore.jar、httpmin.jar等等
其中lib\ext目录下存放有Jmeter依赖的核心jar包,如ApacheJMeter_core.jar\ApacheJMeter_java.jar在写client端需要引用,JMeter插件包也在此目录下。
lib\junit在存放junit测试脚本。

Licenses目录

jmeter证书目录

Printtable_docs目录******(重要)

printtable_docs的usermanual子目录下的内容时JMeter的用户手册文档,其中usermanual下component_reference.html是最常用到的核心元件帮助文档。

用户手册中的内容很详细,在使用中非常重要,相当于字典。

4.JMeter基本使用&元件

界面左边,树状结构图: 添加元件
界面右边,操作元件
绿色箭头,就是执行
在这里插入图片描述

1.向百度发送请求

实现步骤分析
1.创建测试计划
2.添加线程组
3.在线程组内部添加http请求组件
4.配置http请求组件
5.添加查看结果树组件
6.运行测试计划
具体实现:
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
点击运行,并保存文件。
在这里插入图片描述
结果:
在这里插入图片描述

2.测试计划元件

1.测试计划(TestPlan)
描述一个性能测试,包含本次测试所有相关功能
2.线程用户(Threads(Users))
在这里插入图片描述
在这里插入图片描述
线程数相当于请求的虚拟用户数量。改变数字即可。但目前并不是同时发送请求,同时发送请求还需要进行一些配置。
ramp-up:代表要在几秒内将全部用户启动起来。 将ramp-up设置大后,执行的速度就会慢很多,耗时就会多一些。
循环次数,代表有多少个线程,再循环多少次,10线程循环10次,就跑100次。永远就是死循环,要想停止点击STOP。只有运行时才能点击。
在这里插入图片描述

在这里插入图片描述
0代表剩余的请求数,10代表总线程数。
3.取样器(sampler)
取样器是性能测试中向服务器发送请求,记录响应信息,记录响应时间的最小单元,JMeter原生支持多种不同的取样器(就相当于支持不同协议类型的请求),比如HTTP Request Sampler、FTP Request Sampler、TCP Request Sampler、JDBC Request Sampler等,每一种不同类的sampler可以根据设置的参数向服务器发出不同类型的请求。
在JMeter的所有Sampler中,JAVA Request Sampler和BeanShell Request Sampler是两种特殊的可定制的Sampler。
一个取样器通常进行三部分的工作:向服务器发送请求,记录服务器的响应数据和记录响应时间信息。
4.逻辑控制器(Logic Controller)
逻辑控制器,包括两类元件,一类是用于控制testplan(测试计划)中sampler节点发送请求的逻辑顺序的控制器,常用的有如果(if)控制器、switchController、RuntimeController、循环控制器等。另一类是用来组织可控制sampler节点的,如事务控制器、吞吐量控制器(性能测试)。
5.配置元件(Config Element)
配置元件用于提供对静态数据配置的支持。CSVData Set config可以将本地数据文件形成数据池(Data Pool),而对于HTTPRequest Sampler和TCPRequest Sampler等类型的配置元件则可以修改Smapler的默认数据。基本上用于做参数化。
例如:HTTPCookie Manager可以用于对HTTPRequest Sampler的cookie进行管理。
HTTP请求默认值不会触发JMeter发送http请求,而只定义HTTP请求的默认属性。
在这里插入图片描述
6.定时器(Timer)
用于操作之间设置等待时间,等待时间使性能测试中常用的控制客户端QPS的手段,jMeter定义Constant Times、Constant Throughput Times、Guass Ramdon Times等不同类型的Times。
在这里插入图片描述
7.前置处理器(Per Processors)
用于在实际请求发出之前,对即将发出的请求进行特殊处理
例如:Count处理器可以实现自增操作,自增后生成的数据可以被将要发出的请求使用,而HTTP URL Re-Writing Modifier处理器则可以实现URL重写,当URL中有sessionID一类的session信息时,可以通过该处理器填充发出请求实际的sessionID。
在这里插入图片描述
8.后置处理器(Post Processors)
用于对Sampler发出请求后得到的服务器响应进行处理,一般用来提取响应中的特定数据(类似loadrunner中的关联)。
例如:Regular Expression Extractor用于提取响应数据中匹配某正则表达式的数据段,并将其填充在参数中,Xpath Extractor则可以用于提取相应数据中通过给点Xpath值获得的数据。
9.断言(Assertions)
用于检查测试中得到的相应数据等是否符合预期,Assertions一般用来设置检查点,用以保证性能测试过程中的数据交互与预期一致。
在这里插入图片描述
10.监听器
对测试结果进行处理和可视化展示的一系列组件,常用的有图形结果、查看结果树、聚合报告等。
在这里插入图片描述

5.JMeter运行原理

jmeter中是以线程的方式运行的,由于jmeter是运行在jvm虚拟机上的,每个进程的开销比较大,如果以进程的方式来运行的话,每台负载机上的进程数量就不会允许太多,当我们需要大量并发时就需要大量的负载机,这显然是不经济的,在这JAVA也是支持多线程的,所以jmeter选择以线程的方式来运行。
jmeter通过线程组来驱动多个线程运行测试脚本对被测试服务器发起负载,每个负载机上都可以运行多个线程组,jmeter运行场景不仅可以在GUI方式中完成,还可以使用命令行,而且命令行运行的方式对于发在即的资源消耗会更小,关于jmeter分布式和非GUI模式运行,后面会进行详细讲解。GUI就是现在使用的界面模式(主要目的是编写和调试jmeter的测试脚本),在资源有限时,使用命令行模式实现高并发和压力测试。
接口三要素,请求地址、请求方式、请求参数、返回值

6.JMeter测试计划要素

使用jmeter编写测试脚本----要素

  • 测试计划
  • 在测试计划中至少有一个线程组
  • 在线程组中至少有一个取样器(发送请求、记录响应信息、响应时间)
  • 在测试计划中必须有监听器(取样器结果通过监听器展示出来)

7.jmeter录制脚本

1.使用badboy录制【只能够录制网页端】
输入地址,点击记录
![在这里插入图片描述](https://img-blog.csdnimg.cn/20200906223259955.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L2N6X2NoZW5femh1bw==,size_16,color_FFFFFF,t_70#pic_center![在这里插入图片描述](https://img-blog.csdnimg.cn/20200906223519856.png#pic_center
在页面在操作后,在点击记录按钮停止记录。
点击File—》export to Jmeter,选择文件保存位置。在使用JMeter打开文件
在这里插入图片描述
打开文件后,发现少一个元件:监听器,添加监听器,查看结果树。
在这里插入图片描述

点击开始,就能够查看运行结果。
在这里插入图片描述

8.使用JMeter自身代理录制移动端

1.配置JMeter

  • 1.打开JMeter创建新的测试计划
  • 2.在测试计划下添加一个线程组
  • 3.添加HTTP代理服务器
    3.1在测试计划下添加非测试元件:HTTP代理服务器
    在这里插入图片描述
    *4.配置代理服务器
    4.1 端口号默认(8888默认,如果该端口被占用则换一个)
    4.2 https domains中填写电脑本地IP或localhost
    4.3…
    4.4…看图就行
    在这里插入图片描述
    点击启动后,出现该界面。点击ok就行。
    在这里插入图片描述
    之后界面就会这样。出现记录控制台。
    在这里插入图片描述
    2.配置手机(和fiddler配置相同)
    需要使用模拟器(逍遥模拟器,模拟手机),点击设置,找到WLAN,长按WIFI修改网络,高级选项,手动代理,选择代理服务器主机名(写IP地址,写电脑本身的IP地址),端口号写8888(与代理服务器中端口号一致),设置完毕保存后,就相当于做了代理了,就可以开始操作手机,进行录制,做过操作后,线程组里就会出现内容。点击停止,就会出现录制脚本。
    3.添加结果树
    4.点击回访,查看结果树
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值