JMeter自动化压力测试

您所在的位置:网站首页 loadrunner和jmeter哪个简单 JMeter自动化压力测试

JMeter自动化压力测试

2023-06-12 17:18| 来源: 网络整理| 查看: 265

下载:

Apache JMeter - Download Apache JMeterhttps://jmeter.apache.org/download_jmeter.cgi

安装:

JDK 版本要求为 1.8。

一、Jmeter 介绍

1.1、Jmeter 有什么样功能 Apache JMeter 是一个开源、纯 Java、优秀的性能测试工具

能够测试许多不同的应用程序/服务器/协议类型:

HTTP、HTTPS

REST、SOAP

JDBC

FTP

LDAP

JMS 消息类

邮件类(SMTP、POP3、和IMAP)

命令或 shell 脚本

TCP

Java 请求扩展

主要特性:

可视化设计、功能齐全 (可视化)

快速设计测试计划、简单构建和调试程序 (简易性)

内置八大组件,功能强大,高度灵活设计 (高灵活)

完全、快速的可移植性和 100% Java 纯度 (跨平台)

核心功能高度可扩展,可以快速进行二次开发(高扩展)

1.2、Jmeter 与 LoadRunner 比较 总结:

在目前市场来讲,Jmeter 为必备技能、LoadRunner 为加强技能(个人技能)

Jmeter 为一款轻量级、跨平台、功能强大的性能测试工具,目前热度已然超过 LoadRunner

1.3、常用性能测试工具 目前市场上性能测试工具多达几十种,笔者选取了几种比较实在的测试工具,供大家参考

性能测试工具    使用协议    支持协议    支持场景化    主要用途    说明 Jmeter    开源    多协议    是    http 测试,其它测试    JMeter 是 Apache 开源基金会提供的完全开源的性能测试工具,旨在加载测试功能行为和衡量性能。它最初是为测试 Web 应用程序而设计的,但此后已扩展到其他测试功能 LoadRunner    商业    多协议    是    http 测试,其它测试    LoadRunner 是一种预测系统行为和性能的负载测试工具。通过以模拟上千万用户实施并发负载及实时性能监测的方式来确认和查找问题,LoadRunner 能够对整个企业架构进行测试 Kylinpetl/kylinTOP    国产商业    多协议    是    http 测试,其它测试    奇林性能测试软件(简称:kylinPET,performance emulation tool)是一款功能强大的性能测试工具;界面友好、操作方便,资源占用率低;与 LoadRunner 非常类似 ApacheBench    开源    http    否    简易性 http    ApacheBench 是一个轻量级工具。主要用于 HTTP 协议的性能测试。非常简单快捷,不支持场景化测试 Webbench    开源    http    否    简易性 http    Webbench 是知名的网站压力测试工具,非常简单快捷,不支持场景化测试 Sysbench    开源    多协议    #    数据库基准测试    sysbench 是一款开源的多线程性能测试工具,可以执行 CPU/内存/线程/IO/数据库等方面的性能测试 Locust    开源    http    是    http 测试    Locust 是易于使用的分布式用户负载测试工具。它旨在对网站进行负载测试,并确定系统可以处理多少个并发用户。非常易用。很方便地基于 Python 进行脚本扩展和业务请求实现

1.4、性能测试工具如何选型

ab(ApacheBench)、Webbench 使用场景:简单接口测试,无场景化,无参数化处理,命令行工具 Jmter 使用场景:免费+复杂场景化 LoadRunner 使用场景:商业+复杂场景化 Kylinpet/kylinTOP 使用场景:与 LoadRunner 类似,部分功能更为强大 Locust 使用场景:对 Python 熟悉度高,无 UI 设计界面,使用轻量级协程,高并发 工具只是一种形式,无论是性能测试还是功能自动化测试,在学至后面,本质是一种测试编程,工具只是简化了一些功能,但并不能完全替代;Jmeter、LoadRunner 任意掌握一种,就算以后有需要学习其它的,也会变得简单很多

1.5、学习 Jmeter 对 Java 编程的要求

Jmeter 中的脚本编程本质上是 Java 的编程,要求对 Java 有一定的掌握

编写 Jmeter 脚本,熟悉 Java 的基本编程即可,如变量定义、数据类型、条件、循环、Map 及 List 的结构……

Jmter 的二次开发,对 Java 要求上关注较高,要求熟悉使用 Java 和第三方协议的使用,如 Kafaka,Redis 等

2.配置与使用

2.1、JDK环境配置

Linux 系统下面环境变量设置

export JAVA_HOME=/home/xiangsl/softwares/jdk1.8.0_161 PATH=$JAVA_HOME/bin:$PATH export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar

windows下面环境变量设置

JAVA_HOME=D:\Program Files\Java\jdk1.8.0_261; PATH=%JAVA_HOME%\bin;....... CLASSPATH=.;%JAVA_HOME%\lib;%JAVA_HOME%\lib\tools.jar;

2.2、Jmeter 三种模式 Jmeter 模式    设计测试计划    性能压测    角色说明    说明 GUI 模式    √    √    图形端与压力机在本机    设计测试计划,同时可以作轻量级性能测试 客户端模式        √    命令行模式    命令行模式来进行性能压测,使用上快捷方便,跨平台 远程模式        √    图形端与压力机分开    远程模式下可以水平扩容,一般配合图形界面使用 2.4、主要配置介绍 2.4.1、setenv 配置 win 下面以 setenv.bat 存在,linux 下面以 setenv.sh 存在,默认不存在,需要手工创建主要是用于配置一些系统环境变量,如 JVM 启动参数,默认语言等

配置详情见官网(1.4 Running JMeter):https://jmeter.apache.org/uscrmanual/get-started.htmI#frunning

2.4.2、jmeter.properties 几乎所有的配置都可以通过该文件进行修改,比较常用的有:19.7 Remote hosts and RMl configuration

配置详情见官网:https://jmeter.apache.org/usermanual/properties_reference.html

2.4.3、user.properties 用户自定义参数,一般用于测试计划;在这里,我们可以定义任何自己需要的参数

2.4.4、常用命令介绍 windows 命令,一般用于图形界面,主要命令如下:

启动命令    作用 jmeter.bat    图形模式下启动界面(有 cmd 命令框),如果有控制台消息的时候建议使用 jmeterw.cmd    图形模式下启动界面(没有 cmd 命令框) jmeter-server.bat    以服务端模式启动 mirror-server.cmd    启动一个镜像服务器 linux 命令,一般用于服务端,主要命令如下:

启动命令    作用 jmeter    图形模式下启动界面(有终端命令框),如果有控制台消息的时候建议使用 jmeter.sh    图形模式下启动界面(没有终端命令框) jmeter-server    以服务端模式启动 mirror-server.sh    启动一个镜像服务器 2.5、Jmeter 图形端安装 2.5.1、前置条件 操作系统: 不限,一般是win系统居多

JDK: 1.8+

下载后解压至某一文件夹

2.5.2、参数修改 (1)、在 bin 目录下面增加 setenv.bat 文件

rem This is the content of bin\setenv.bat,rem it will be called by bin\jmeter.bat set JVM_ARGS=-Xms2g -Xmx2g -Dpropname=longge

这里根据自行调整内存大小,默认为1024m,做大型测试时起步4G 其它参考选项,详见官网(1.4 Running JMeter) https://jmeter.apache.org/usermanual/get-started.html#running   (2)、修改 jmeter.properties 配置文件

server.rmi.ssl.disable=true sampleresult.default.encoding=UTF-8  // 未设置的话,采样器结果有可能乱码

2.5.3、启动/检测 (1)、运行 jmeter.bat 或者 jmeterw.cmd 启动

(2)、启动后,打开 cmd,采用如下命令,检测进程详细,如下表示进程存在且参数配置生效

wmic process where caption="java.exe" get processid,caption,commandline /value wmic process where caption="javaw.exe" get processid,caption,commandline /value  

2.6、Jmeter 服务端安装 2.6.1、前置条件 操作系统: 不限,一般为 Linux 系统居多

JDK: 1.8+

下载后解压至某一文件夹

2.6.2、参数修改 (1)、在 bin 目录下面增加 setenv.sh 文件

#This is the content of bin\setenv.sh, #it will be called by bin\jmeter.sh export JVM_ARGS="-Xms2g -Xmx2g -Dpropname=longge"

这里根据自行调整内存大小,默认为 1024m,做大型测试时起步 4G 其它参考选项,详见官网(1.4 Running JMeter) https://jmeter.apache.org/usermanual/get-started.html#running (2)、修改 jmeter.properties 配置文件

server.rmi.ssl.disable=true sampleresult.default.encoding=UTF-8 1 2 (3)、修改 jmeter-server 文件

RMI_HOST_DEF=-Djava.rmi.server.hostname=192.168.128.166

这里根据主机地址修改 2.6.3、启动&检测 (1)、运行 sh jmeter-server 启动

(2)、启动后,采用如下命令,检测进程详细,如下表示进程存在且参数配置生效

ps -ef|grep longge

缺图

2.6.4、图形端修改 修改 jmeter.properties 文件,多个主机用逗号隔开

remote_hosts=192.168.128.166:1099,192.168.128.167:1099,192.168.128.168:1099

图形端启动后,在 Run/Remote Start 里面能够看到相关主机表示安装成功   2.7、安装小结 (1)、大部分配置采用纯手工修改,一定要细小,注意空格,中英文,端口的影响

(2)、理解 Jmeter 的三种模式的应用场景,对我们后续有比较好的指导意义

三、Jmeter 常规配置 3.1、设置中文 3.1.1、临时设置中文 依次点击 Options



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3