网站建设客户人群,wordpress搬家,wordpress超简洁自适应html5博客主题:read,郑州微网站开发第一遍没学懂#xff0c;后续文章会更新~
目录#xff1a;
1.JMeter介绍与安装Meter简介JMeter安装2.JMeter的运行JMeter运行、界面功能简介3.使用代理服务器录制请求录制压测脚本#xff08;一#xff09;Web端脚本录制方法4.测试计划5.线程组6.控制器7.JMeter采样器/取…第一遍没学懂后续文章会更新~
目录
1.JMeter介绍与安装Meter简介JMeter安装2.JMeter的运行JMeter运行、界面功能简介3.使用代理服务器录制请求录制压测脚本一Web端脚本录制方法4.测试计划5.线程组6.控制器7.JMeter采样器/取样器8.JMeter场景逻辑控制技术9.JMeter监听器10.JMeter定时器11.JMeter断言元件的使用12.JMeter常用配置元件剖析13.JMeter前置处理器前置处理器SampleTimeout前置处理器Beanshell前置处理器14.JMeter后置处理器15.JMeter执行顺序16.JMeter虚拟用户管理17.HTTP请求属性设置18.HTTPcookie设置Cookiemanager19.HTTP信息头管理器Headermanager20.HTTP请求设置21.监听器与测试结果Listener测试结果
1.JMeter 介绍与安装
Meter简介
Apache组织开发的开源免费压测工具纯Java程序跨平台性强源程序可以从网上下载高可扩展性可对服务器、网络或对象模拟巨大的负载进行压力测试可以用于接口测试支持分布式、多节点部署
JMeter 安装
下载位置
官网 https://jmeter.apache.org/binary 可运行文件包官网下载规律 首页 - Download - binariesJMeter 安装方法 直接解压Demo JMeter 官网寻找安装包下载解压 2.JMeter 的运行
JMeter 运行、界面功能简介
运行环境要求java运行时环境运行方法命令行直接启动 $jmeter_home/bin/jmeter.sh常规的菜单功能新建、保存、查询、配置、帮助 等压测运行相关开始运行、停止运行、远程运行、停止远程运行 等设定外观长相更改配置语言不过建议用英语个人体会中文翻译的有点晕Demo – JMeter 界面操作、外观、语言
3.使用代理服务器录制请求
录制压测脚本一Web 端
压测对象 - http://news.baidu.com压测页面 – 百度首页百度新闻步骤 访问百度首页单击进入“百度新闻”操作手段 录制回放上手容易入门学习的好手段
脚本录制方法
打开 JMeter新建压测脚本添加 “HTTP(S) Test Script Recorder” 添加“Thread Group” 在 Thread Group中添加“Recording Controller” 打开 HTTP(S) Test Script Recorder设定 Port 8088设定 Target Controller Test Plan Tread Group Recording Controller 在 Requests Filtering 添加“include”与 “Exclude”URL 正则匹配表达式目的避免录制过多没必要的请求Include .*\.(baidu\.com).*Exclude.*\.(js|css|PNG|jpg|ico|png|gif).* 关于链接过滤的几点说明exclude 去掉一些诸如图片、js、css 等静态请求这些静态资源一般会 单独存放不会占用服务器运算资源所以压测的时候可以不测试这些资源include 包含内容只抓取百度URL的内容不抓其他的网站的内容正则表达试匹配原理快速入门说明见下页图片说明菜鸟教程 单击保存按钮命名文件名将对 JMeter 脚本的更改存储到磁盘打开浏览器将浏览器的代理服务器地址指向 http://localhost:8088 单击HTTP(S) Test Script Recorder中的Start按钮打开代理单击弹框中的确定按钮JMeter的录制代理将会开启 在对应的浏览器中访问百度首页进入百度新闻站点停止JMeter的代理服务可以看到对应的请求已被录制到JMeter中了 Demo – JMeter 脚本的录制过程过滤资源的对比展示回放验证添加 View Results TreeView Result Tree 的用途 看Req /Resp 详情 只是为了检验所以一个并发、一次循环即可单击开始运行按钮 在 View Result Tree 中检查 请求/响应 是否都成功了 JMeter 压测回放检查脚本的正确性
4.测试计划
用来描述一个压力/性能测试脚本和场景设计的基本运行单元 使用JMeter进行测试 的所有内容都是基于一个测试计划用户定义变量 独立运行每个线程组 不勾选各个线程组并行、随机执行勾选线程组按照前后顺序来执行主线程组运行完成之后运行tearDown线程组函数测试模式比如保存响应数据或者样本数据需要注意的是选择该功能非常磁盘 空间添加文件或者jar包常用于外部功能调用Demo 测试计划
5.线程组
线程组元件是任何一个测试计划的开始点在一个测试计划中的所有元件 都必须在某个线程组下所有的任务都是基于线程组。第一部分在请求取样器执行错误时需要执行的下一步动作第二部分线程属性 第一部分在请求取样器执行错误时需要执行的下一步动作 Continue继续执行接下来的操作Start Next Loop忽略错误执行下一个循环Stop Thread退出该线程不再进行此线程的任何操作Stop Test等待当前执行的采样器结束后结束整个测试Stop Test Now直接停止整个测试第二部分线程属性 Number of Thread (users)线程数模拟的用户数量Ramp-up Periodin seconds达到指定线程数所需要的时间。举例线程数设置 为50此处设置为5那么每秒启动的线程数 线程数50/5 10Loop Count: 循环次数Same user on each iteration每次迭代都用相同的用户 勾选该选项则不同次迭代 之间是串行执行不勾选则为并行执行。Delay Thread creation until needed当线程需要执行的时候才会被创建。如果不 选择这个选项那么在计划开始的时候所有需要的线程就都被创建好了 Specify Thread lifetime定义线程调度时间Duration (seconds) 持续时间秒, 在此选项填入N说明这个计划 从某个开始时间算起执行N秒后结束。会忽略 结束时间 的选项Startup delay (seconds) 启动延迟秒在此选项填入N手动点击 开始执行计划然后延迟N秒后计划才真正开始执行。
6.控制器
种类丰富为请求执行提供不同的逻辑控制介绍几个常用的逻辑控制器 事务控制器 Transaction Controller条件控制器 If Controller循环控制器 Loop Controller随机控制器 Random Controller 7.JMeter 采样器/取样器
采样器取样器 模拟用户操作向服务器发出请求的组件采样器作用向服务器发送请求记录响应信息与响应时间常用采样器讲解 HTTP Request SamplerDebug SamplerBeanShell Sampler
8.JMeter 场景逻辑控制技术
利用JMeter 逻辑控制器实现测试业务流程中的逻辑变化模拟实际业务场景 场景逻辑控制技术 9.JMeter 监听器
用来动态的监控JMeter执行测试的过程实时查看测试结果常用监听器 查看结果树聚合报告后端监听器
10.JMeter 定时器
顾名思义定时器是用来控制采样器发出请求开始时间的组件常见定时器 固定定时器高斯随机定时器吞吐量定时器并发定时器
11.JMeter 断言元件的使用
断言的作用就是让 JMeter 程序判断预期结果和实际结果是否一致从而 判定请求是否成功常见断言 响应断言大小断言XPath 断言Json 断言
12.JMeter 常用配置元件剖析
配置元件的用途常见的配置元件配置元件的执行顺序配置元件的作用范围配置元件执行结果的查看
13.JMeter 前置处理器
前置处理器
在取样器发送请求之前执行,做一些准备工作,如设置参数、环境变量等常见前置处理器举例 Sample Timeout 前置处理器BeanShell 前置处理器
Sample Timeout 前置处理器
设定请求超时时间作用范围内的所有请求均生效单位毫秒
Beanshell 前置处理器
什么是Beanshell小型嵌入式 Java 源码解释器基本就是 Java 语言BeanShell前置处理器在Sampler 执行之前会被执行直接在JMeter的Beanshell处理器中写代码生成当前时间戳通过程序生成当前时间戳将时间戳值赋值给变量然后传递给后续的请求样本
14.JMeter 后置处理器
后置处理器主要用于取样器执行后的提取数据操作常见的后置处理器 Json 数据提取器正则表达式数据提取器XPath 数据提取器
15.JMeter 执行顺序
JMeter 八大组件 执行顺序线程组-定时器-控制器-前置处理器-配置原件-采样器-后置处理器-断言-监听器 16.JMeter 虚拟用户管理
~
17.HTTP 请求属性设置
~
18.HTTP cookie 设置
Cookie manager
自定义cookie配置项
19.HTTP 信息头管理器
Header manager
自定义header 变量Header变量值的带入
20.HTTP 请求设置
21.监听器与测试结果
Listener 测试结果
Listener 种类多样展示 调试测试结果