IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 开发测试 -> Jmeter基本使用到精通(一)从安装第一个任务线程的创建及测试 -> 正文阅读

[开发测试]Jmeter基本使用到精通(一)从安装第一个任务线程的创建及测试

(一)jemter介绍
Apache JMeter是100%纯JAVA桌面应用程序,被设计为用于测试客户端/服务端结构的软件(例如web应用程序)。它可以用来测试静态和动态资源的性能,例如:静态文件,Java Servlet,CGI Scripts,Java Object,数据库和FTP服务器等等。JMeter可用于模拟大量负载来测试一台服务器,网络或者对象的健壮性或者分析不同负载下的整体性能。
同时,JMeter可以帮助你对你的应用程序进行回归测试。通过你创建的测试脚本和assertions来验证你的程序返回了所期待的值。为了更高的适应性,JMeter允许调用二次开发的jar包来丰富你的测试场景;JMeter允许你使用正则表达式来创建这些assertions.
但使用JMeter无法验证JS程序,也无法验证页面UI,所以要须要和Selenium配合来完成Web2.0应用的测试。
(二)
1.http://jmeter.apache.org/下载最新版本的JMeter,解压文件到任意目录

2.安装JDK,配置环境变量JAVA_HOME

JDK环境变量配置传送门

3.系统要求:JMeter2.11 需要JDK1.6以上的版本支持运行

4.JMeter可以运行在如下操作系统上:Unix,Windows和Open VMS.

JMeter插件安装

  1. 插件下载地址: http://jmeter-plugins.org/downloads/all/

  2. 插件下载后解压:找到JMeterPlugins-Extras.jar,把JMeterPlugins-Extras.jar放到apache-jmeter-2.12\lib\ext目录。

5.应当避免jdk路径与jmeter路径有中文和空格,否则会有异常,也会导致远程测试出现问题。

6.进入bin目录双击jmeter. bat或者配置环境变量创建JMETER_HOME,cmd中运行jmeter

(三)jmeter目录结构
(1)backup目录 脚本备份目录,里边的文件都是以.jmx后缀结尾的文件
  实际开始安装解压后是不存在这个目录的,这个是由于宏哥使用过JMeter后,JMeter自动创建这个目录,然后备份了脚本文件。

(2)bin目录 可执行文件目录
Jmeter.bat:是启动jmeter的主脚本。
Jmeter-server.bar:是用来实现联机负载。
Jmeter.properties:是jmeter主要的配置文件,超过80%的配置项都是通过这个文件实现。(PS:修改配置文件后,要重启Jmeter才能生效)
  Jmeter.bat 打开Jmeter主界面
  Jmeter使用的日志文件名称被定义到Jmeter.properties中,默认在Jmeter.log可查看日志
(3)dosc目录
  docs目录下的文件是JMeter的Java Docs,而printable_docs的usermanual子目录下的内容是JMeter的用户手册文档,其中component_reference.html是最常用到的核心元件帮助文档。该目录下存放的是jmeter官方文档的API文档,主要是用于二次开发。
(4)extras目录
  该目录下的文件提供了对构建工具Ant的支持,可以使用Ant来实现测试自动化,例如批量脚本执行,产生HTML格式的报表,测试运行时,可以把测试数据记录下来,Jmeter会自动生成一个.jtl文件,将该文件放到extras目录下,运行“ant -Dtest=文件名 report”,就可以生成测试统计报表。也可以用于持续集成。
(5)lib目录
  该目录包含两个子目录,其中ext子目录存放有JMeter的核心jar包,另一个junit子目录存放JUnit测试脚本。用户扩展所依赖的包,应该直接放到lib目录下,而非lib/ext下。
注意:无法识别 zip 格式的包文件,所以需要的包文件均要求以 .jar 结尾
(6)Licenses jmeter 软件许可文件目录
(7)printable_docs目录
  该目录存放的是jmeter官方提供的帮助文档。printable_docs的demos子目录下有一些常用的JMeter脚本案例,可以作为参考。可打印半版本目录。

(8)LICENSE JMeter ——许可说明

(9)NOTICE JMeter ——简单信息说明

(10) README.md ——JMeter 官方基本介绍

jmeter.properties文件主要内容
#默认语言设置

  language=en

#捕捉cookie开关

  CookieManager.save.cookies=true

#配置编辑器的字体和尺寸

 jsyntaxtextarea.font.family=宋体
 jsyntaxtextarea.font.size=20

#配置默认编码格式

 sampleresult.default.encoding=UTF-8

#SSL 配置:重点关注下面几个配置# 指定 HTTPS 协议层

#指定 HTTPS 协议层    
https.default.protocol=TLS    
#指定 SSL版本,实际应用中可能需要修改    
https.default.protocol=SSLv3    
#设置启动的协议
https.socket.protocols=SSLv2Hello SSLv3 TLSv1    
#缓存控制,控制 SSL是否可以在多个迭代中重用    
https.use.cached.ssl.context=true

#JMeter 测试项目自动备份配置

# 设置是否启用自动备份,默认是 true    jmeter.gui.action.save.backup_on_save=true

# 设置自动备份目录,默认备份至 JMeter 根目录的 backups下
   jmeter.gui.action.save.backup_directory=

# 设置自动备份项目数,默认为最近 10 个
   jmeter.gui.action.save.keep_backup_max_count=10

#远程主机配置

# 配置远程主机的 IP,默认为本机。用逗号","可以设置多个远程主机   remote_hosts=127.0.0.1

# 多个远程主机指定示例如下,其中:后为端口
  remote_hosts=127.0.0.1:1099,127.0.0.1:1200,127.0.0.1:1300   对于 RMID
的配置请直接看配置文件中的选项说明

#日志管理配置

# 设置日志格式   log_format_type=default

# 设置日志输出级别   log_level.jmeter=INFO

# 设置 junit 日志输出级别   log_level.jmeter.junit=DEBUG

# 设置日志输出目标文件,默认为 jmeter.log   log_file=jmeter.log

jmeter.bat 关键配置修改
#为了更优化的使用 jmeter,需要对 jmeter.bat 中的一些配置根据当前机器的配置进行优化,这里进行关键配置项说明,大家根据自己的机器的配置来进行修改。jvm 相关配置,大概在 80 行左右,找到这些配置,对其中的数值根据当前机器的硬件配置来修改。

set HEAP=-Xms2048m -Xmx2048m   set NEW=-XX:NewSize=512m
-XX:MaxNewSize=512m   set SURVIVOR=-XX:SurvivorRatio=8 -XX:TargetSurvivorRatio=50%   set TENURING=-XX:MaxTenuringThreshold=2   if %current_minor% LEQ “8” (   rem Increase MaxPermSize if you use a
lot of Javascript in your Test Plan :   set PERM=-XX:PermSize=512m
-XX:MaxPermSize=1024m)

#设置输出报告模板格式

 jmeter.save.saveservice.output_format = csv

(四)创建第一个线程

在这里插入图片描述
这里可以选择中英文
(1)脚本中测试计划只能有一个,测试计划中至少要有一个线程组,至少要有一个取样器(模拟用户请求),至少要有一个监听器(分析系统性能)
(2)添加线程组
在这里插入图片描述
setup thread group:测试前预执行
thread group(线程组):通俗的讲一个线程组,可以看做一个虚拟用户组,线程组中的每个线程都可以理解为一个虚拟用户。线程组中包含的线程数量在测试执行过程中是不会发生改变的。
teardown thread group:测试后执行

这里右键添加一个线程组thread group
(3)设置线程数
设置加速时间
设置执行测试的次数
在这里插入图片描述
白话理解为1一个线程在一秒内执行一次,例如:
{
并发数 = 线程数/Ramp-Up time*循环数
Ramp-up即在多少秒内执行完成
依次输入3,0,2
即循环2次
执行顺序为1,1,2,2,3,3
循环的执行时间近乎相同,比如说1,1,循环次数从源码来看是串行执行(只是有点近似并行执行)
当Ramp-up=0,用压测服务器最大的能力持续发送请求
}

(4)控制器与采样器
JMeter有两种类型的控制器:采样器和逻辑控制器。用这些元件来驱动测试的进行。
采样器告诉JMeter将请求发送到服务器。如果您希望JMeter发送HTTP请求,则添加一个HTTP Request Sampler。您还可以通过将一个或多个配置元素添加到采样器来自定义请求。
逻辑控制器使您可以自定义JMeter用于决定何时发送请求的逻辑。可以添加一个Interleave Logic Controller在两个HTTP Request Samplers之间交替。
采样器也可以翻译成取样器;用来模拟用户的操作,向服务器(被测系统)发出Http请求、WebService(SOAP/XML-RPC Request)请求或者Java请求等。

(5)测试一个登录
在这里插入图片描述
这里查看结果树,成功登录
在这里插入图片描述

更改密码登录
在这里插入图片描述
登录失败
在这里插入图片描述

到此为止第一个简单的测试完成。这里同理也可以用百度一下去测试
可以通过开发者工具获取请求方式、请求参数来进行请求
或者通过fiddler、wireshark这种抓包工具获取,具体不多描述

  开发测试 最新文章
pytest系列——allure之生成测试报告(Wind
某大厂软件测试岗一面笔试题+二面问答题面试
iperf 学习笔记
关于Python中使用selenium八大定位方法
【软件测试】为什么提升不了?8年测试总结再
软件测试复习
PHP笔记-Smarty模板引擎的使用
C++Test使用入门
【Java】单元测试
Net core 3.x 获取客户端地址
上一篇文章      下一篇文章      查看所有文章
加:2022-02-14 21:28:40  更:2022-02-14 21:30:44 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/18 2:35:33-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码