做瞹瞹嗳视频网站,档案信息网站建设情况,做旅游在网上用什么网站推广,跨境电商数据在哪个官网查jmeter优点是#xff1a;开源免费#xff0c;小巧#xff0c;丰富的学习资料和扩展组件
缺点是#xff1a;1.不支持IP欺骗#xff0c;分析和报表能力相对于LR欠缺精确度#xff08;以分钟为单位#xff09;
工具用户量分析报表IP欺骗费用体积扩展性Loadrunner多(万)精…jmeter优点是开源免费小巧丰富的学习资料和扩展组件
缺点是1.不支持IP欺骗分析和报表能力相对于LR欠缺精确度以分钟为单位
工具用户量分析报表IP欺骗费用体积扩展性Loadrunner多(万)精确(s)支持收费大(单位gb)不能扩展Jmeter少较差(min)不支持免费小(MB)有扩展组件
一、jmeter的安装和基本使用
一安装JDK
地址http://www.oracle.com/
环境变量
JAVA_HOMED:\Java\jdk1.8.0_191Path中添加%JAVA_HOME%\bin%JAVA_HOME%\jre\bin
校验cmd命令行里输入 java -version
二安装jmeter
地址Apache JMeter - Download Apache JMeter
解压安装包即可
启动3种方式进入bin目录双击jmeter.jar ; 双击ApacheJMeter.jar ;命令行输入java -jar ApacheJMeter.jar
三文件介绍
1. bin目录介绍存放可执行文件和配置文件 jmeter.bat: windows的启动文件重要
jmeter.log: Jmeter工具运行的日志文件
jmeter.propertites: jmeter工具的配置文件重要
jmeter.sh: linux的启动文件
jmeter-server: linux分布式测试的启动程序
jmeter-server.bat: windows分布式测试的启动程序
2. /docs/api/index.html
是jmeter的api文档用于开发扩展组件 3. printable_docs目录
用户帮助手册 4. lib目录
存放jmeter依赖的jar包和用户扩展所依赖的jar包(ext目录下) 四功能概要
1. 修改默认设置 - jmeter界面汉化
临时的菜单Options-Choose Language-Chinese(Simplified)
永久的修改配置文件bin\jmeter.properties文件改成languagezh_CN,然后重启jmeter 2. 主题修改 二、jmeter元件和组件的介绍
(一元件的基本介绍
1. 元件多个类似功能组件的容器(类似于类) 取样器发送请求逻辑控制器控制语句的执行顺序前置处理器对请求参数进行预处理后置处理器对响应结果进行提取断言检查接口的返回结果是否与预期结果一致定时器设置等待测试片段封装一段代码供其他脚本调用配置元件测试数据的初始化配置监听器查看jmeter脚本的运行结果
2. 组件实现独立的某个功能类似于方法
如取样器里的HTTP请求逻辑控制器里的循环控制器事务控制器 (二元件的作用域
元件的作用域是靠测试计划的树形结构中的父子关系来确定的。 提示所有的组件都是以取样器为核心运行的。组件添加的位置不同生效的取样器也不同。
1. 作用域规则
取样器--核心不和其他元件相互作用没有作用域逻辑控制器--只对其子节点中的取样器和逻辑控制器起作用其他元件--如果是某个取样器的子节点则该元件只对其父节点其作用 如果其父节点不是取样器则其作用域是该元件父节点下的其他所有后代节点(包括子节点子节点的子节点等)
2. 元件的执行顺序
同一个作用域下不同类型元件
配置元件(config elements)前置处理器(per-processors)定时器(timers) 取样器(sampler)后置处理器(post-processors)断言(assertions)监听器(listeners)
同一个作用域下多个相同类型元件:
按照在测试计划中从上到下的顺序依次执行 举例整理执行顺序
定时器1 - HTTP请求1 - 定时器1 - 定时器2 - HTTP请求2 - 定时器1 - 定时器3 - HTTP请求3
(三线程组
1.线程组概览
作用线程组就是控制jmeter用于执行测试的一组用户
特点
模拟多人操作线程组可以添加多个多个线程组可以并行或串行取样器请求和逻辑控制器必须依赖线程组才能使用
不控制顺序如图 如果要顺序执行线程组设置如下 执行结果如图 2.线程组的特点
模拟用户支持多用户操作多个线程可以串行执行也可以并行执行
3.线程组的分类
setup线程组-前置处理初始化
普通线程组-编写脚本可以看做一个虚拟用户组每一个线程都可以理解为一个虚拟用户
teardown线程组-后置处理环境恢复等
4.线程组参数详解 (1)模拟10个用户并行执行 2模拟5个用户5s内启动完成 3模拟2个用户各循环3次 4模拟2个用户运行5s (5) 模拟2个用户等待5s后开始执行持续时间2s 6案例分析
循环线程数为2循环次数为3运行观察结果循环线程数为3循环次数为2运行观察结果
相同点从请求数量来说完全相同
不同点场景不同
线程数代表用户数即性能测试时的负载量(线程数为2比线程数为3对应的负载量小)循环次数代表时间即性能测试时的运行时间(循环次数3比循环次数2对应的时间长)
5. http请求使用示例 a.如何配置来发送http请求
发送 GET 请求请求参数在路径中
URL协议协议、服务器域名或IP、端口、方法(GET)、路径、编码格式
参数
在路径后添加参数 。格式 ?键名键值键名键值在参数列表中添加参数 。格式名称(键名)、值键值
发送POST请求请求参数在消息体数据中
URL:协议、服务器域名或服务器域名或IP、端口、方法(POST)、路径、编码格式
参数
在消息体数据中添加请求体(form/json)在参数列表中添加参数 (form) b.重定向
GET https://www.baidu.com/s HTTP请求的响应数据和HTTP请求-1的响应数据一样
重定向的原因分析
第一个HTTP请求中URL错误导致服务器产生了重定向提供了新的URL路径
jmeter会自动发送第二个http请求使用第一个http请求中的返回的URL路径点击最外层http请求时显示的内容于最后一个http请求的请求和响应数据一致。
6.响应数据中存在乱码
需要修改取样结果的编码格式-修改jmeter.properties文件
# The encoding to be used if none is provided (default ISO-8859-1)sampleresult.default.encodingUTF-8