赞
踩
Apache JMeter TM是纯Java 开源软件,最初由Apache Software Foundation的Stefano Mazzocchi开发,旨在负载测试功能行为和测量性能。 您可以使用JMeter分析和测量Web应用程序或各种服务的性能。 性能测试意味着针对重负载,多个和并发用户流量测试Web应用程序。 JMeter最初用于测试Web应用程序或FTP应用程序。 如今,它也用于功能测试,数据库服务器测试等。
JMeter的基本工作流程如下图所示
JMeter模拟一组用户向目标服务器发送请求,并通过图形图表返回目标服务器的统计信息
Introduction to JMeter
完成JMeter的工作流程,如下图所示
理论上JMeter在任何具有兼容Java实现的系统上正确运行。
以下是与JMeter兼容的操作系统列表
Linux
Windows
Mac OS
Ubuntu
安装完成后,您可以使用以下程序来检查Java JDK是否在您的系统中安装成功
步骤2)下载Jmeter
截至目前,JMeter的最新版本是Apache JMeter 5.5。Apache JMeter - Download Apache JMeter
第3步)安装
JMeter的安装是非常容易和简单的。你只需将zip/tar文件解压到你想安装JMeter的目录中。没有繁琐的安装屏幕需要处理! 只需解压缩,就可以完成了!
一旦解压完成,安装目录结构应如下图所示
如何用简单的步骤安装Jmeter
以下是JMeter目录的描述及其重要性 JMeter目录包含许多文件和目录
/bin: 包含JMeter脚本文件,用于启动JMeter
/docs: JMeter文档文件
/extras:与ant相关的额外文件
/lib/: 包含JMeter所需的Java库
/lib/ext:包含JMeter和协议的核心jar文件
/lib/junit: 用于JMeter的Junit库
/printable_docs:
GUI模式
服务器模式
命令行模式
如果你使用的是Windows,只需运行/bin/jmeter.bat文件,即可在GUI模式下启动JMeter。
服务器模式用于分布式测试。这种测试的工作方式是客户端-服务器模式。在这种模式下,JMeter以服务器模式运行在服务器计算机上。在客户端计算机上,JMeter以GUI模式运行。
要启动服务器模式,需要运行bin\jmeter-server.bat文件,如下图所示
在命令行模式下启动JMeter
在GUI模式下,JMeter会消耗很多计算机内存。为了节省资源,你可以选择在没有GUI的情况下运行JMeter。要做到这一点,请使用以下命令选项
这是一个命令行的例子
$jmeter -n -t testPlan.jmx -l log.jtl -H 127.0.0.1 -P 8000
根据你的要求,你将需要下面列出的一个或多个可选软件包。
Java编译器
Java编译器允许开发人员构建JMeter源代码和其他JMeter插件
SAX XML解析器
SAX是XML的简单API,最初是只用Java的API。你可以使用SAX XML解析器作为JMeter中XML解析器的替代。
电子邮件支持
JMeter具有广泛的电子邮件功能。它可以根据测试结果发送电子邮件,并有POP3(S)/IMAP(S)采样器。它也有SMTP采样器。
JDBC驱动
如果你想测试数据库服务器,你必须安装JDBC驱动程序。
JMeter的不同组件称为Elements。 每个元素都是为特定目的而设计的。
线程组是线程的集合。 每个线程代表一个用户,每个Thread模拟一个到服务器的真实用户请求。
线程组的控件允许您设置每个组的线程数。
例如,如果将线程数设置为100; JMeter将创建并模拟100个用户对被测服务器的请求
线程组如何知道需要进行哪种类型的请求(HTTP,FTP等)呢?答案是采样器。用户请求可以是FTP请求,HTTP请求,JDBC请求......等。
假设您想要对FTP服务器进行性能测试。 您可以在JMeter中使用FTP请求采样器来执行此任务。 此控制器允许您将FTP“下载文件”或“上载文件”请求发送到FTP服务器。
例如,如果要从测试的FTP服务器下载文件“Test.txt”,则需要在JMeter中配置一些参数,如下图所示
JMeter将FTP命令发送到FTP服务器ftp.example.com ,然后从该服务器下载文件Test.txt。
HTTP请求:
此采样器允许您将HTTP/HTTPS请求发送到Web服务器。
考虑下面的例子。 JMeter向Google网站发送HTTP请求,并从该网站检索HTML文件或图像。
此采样器允许您执行数据库性能测试 。 它将JDBC请求(SQL查询)发送到数据库。
例如,数据库服务器具有存储在表名test_tbl中的字段test_result。 您想从数据库服务器查询此数据; 您可以配置JMeter将SQL查询发送到此服务器以检索数据。
此采样器允许您使用BSF脚本语言编写采样器。
以下是JMeter中BSF采样器的示例
此采样器允许您读取访问日志并生成HTTP请求。 日志可以是图像,Html,CSS ......
如果要测试邮件服务器,可以使用SMTP采样器。 此采样器用于使用SMTP协议发送电子邮件。
图形结果侦听器在图形上显示服务器响应时间
查看结果树以基本HTML格式显示用户请求的结果
表结果以表格格式显示测试结果的摘要
日志在文本文件中显示测试结果的摘要
设置默认值和变量供以后采样器使用。
下图显示了JMeter中一些常用的配置元素
假设您要为使用不同凭据登录的100个用户测试网站。 您不需要记录脚本100次! 您可以参数化脚本以输入不同的登录凭据。 该登录信息(例如,用户名,密码)可以存储在文本文件中。 JMeter有一个元素,允许您从该文本文件中读取不同的参数。 它是“CSV数据集配置”,用于从文件中读取行,并将它们拆分为变量。
这是CSV数据的示例。 这是一个文本文件,其中包含用于登录目标网站的用户和密码
让我们用一个例子来理解这一点 -
您使用浏览器(Firefox,IE ...等)浏览www.google.com
您使用您的用户名和密码登录。
您的用户名和密码将作为cookie存储在您的计算机中。
下次访问www.google.com时 ,您无需再次登录,因为您的浏览器将使用您的Cookie作为用户数据登录。
HTTP Cookie管理器也具有与Web浏览器相同的功能。 如果您有HTTP请求并且响应包含cookie,则Cookie管理器会自动存储该cookie,并将其用于将来对该特定网站的所有请求。
此元素允许您设置HTTP请求控制器使用的默认值。
例如,
您正在向服务器google.com发送100个HTTP请求
您必须为所有这100个请求手动输入server name = google.com
相反,您可以使用“服务器名称或IP”字段= google.com添加单个HTTP请求默认值
无需键入100次!
登录配置元素允许您在采样器中添加或覆盖用户名和密码设置。
例如,您希望使用用户和密码模拟一个用户登录网站www.facebook.com 。 您可以使用登录配置元素在用户请求中添加此用户和密码设置
登录配置元素 | CSV数据配置 |
---|---|
用于模拟一个用户登录 | 用于模拟多个用户登录 |
仅适用于登录参数(用户和密码) | 适用于大量参数 |
自动化测试相关教程推荐:
2023最新自动化测试自学教程新手小白26天入门最详细教程,目前已有300多人通过学习这套教程入职大厂!!_哔哩哔哩_bilibili
2023最新合集Python自动化测试开发框架【全栈/实战/教程】合集精华,学完年薪40W+_哔哩哔哩_bilibili
测试开发相关教程推荐
2023全网最牛,字节测试开发大佬现场教学,从零开始教你成为年薪百万的测试开发工程师_哔哩哔哩_bilibili
postman/jmeter/fiddler测试工具类教程推荐
讲的最详细JMeter接口测试/接口自动化测试项目实战合集教程,学jmeter接口测试一套教程就够了!!_哔哩哔哩_bilibili
2023自学fiddler抓包,请一定要看完【如何1天学会fiddler抓包】的全网最详细视频教程!!_哔哩哔哩_bilibili
2023全网封神,B站讲的最详细的Postman接口测试实战教学,小白都能学会_哔哩哔哩_bilibili
如果对你有帮助的话,点个赞收个藏,给作者一个鼓励。也方便你下次能够快速查找。
如有不懂还要咨询下方小卡片,博主也希望和志同道合的测试人员一起学习进步
在适当的年龄,选择适当的岗位,尽量去发挥好自己的优势。
我的自动化测试开发之路,一路走来都离不每个阶段的计划,因为自己喜欢规划和总结,
测试开发视频教程、学习笔记领取传送门!!
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。