专栏首页APP测试Jmeter系列之简介与环境安装

Jmeter系列之简介与环境安装

VOL 125

20

2020-05

今天距2021年225天

这是ITester软件测试小栈第125次推文

点击上方蓝字“ITester软件测试小栈“关注我,每周一、三、五早上 07:30准时推送。

微信公众号后台回复“资源”、“测试工具包”领取测试资源,回复“21天打卡”一起学习成长,打怪升级。

本文5258字,阅读约需14分钟

在此之前,从零开始带大家搭建Python接口自动化框架,可能没有代码基础的小伙伴一脸懵逼。本着负责任的态度,更重要的是,让大家掌握多种自动化框架,以便面试的时候拿(吹)高(牛)薪(逼)。接下来,带大家从零开始学习Jmeter,你懂的,我们一直都会认真的写干货。

以下,主要介绍Jmeter简介、环境安装及接口实战。

Jmeter简介

1

Jmeter介绍

JMeter是Apache组织开发的基于Java的压力测试工具。用于对软件做压力测试,它最初被设计用于Web应用测试,但后来扩展到其他测试领域。可以用于测试静态和动态资源,例如静态文件Java 小服务程序CGI 脚本Java 对象数据库FTP 服务器等等。

JMeter 可以用于对服务器、网络或对象模拟巨大的负载,来自不同压力类别下测试它们的强度和分析整体性能。

另外,JMeter能够对应用程序做功能/回归测试,通过创建带有断言的脚本来验证程序是否返回了期望结果。为了最大限度的灵活性,JMeter允许使用正则表达式创建断言。Jmeter主要对应用程序做功能测试压力测试接口测试性能测试

2

Jmeter特点

  • 开源免费,基于Java编写,可集成到其他系统,可拓展各个功能插件;
  • 支持接口测试,压力测试等多种功能,支持录制回放,入门简单;
  • 相较于自己编写框架或其他开源工具,有较为完善的UI界面,便于接口调试;
  • 多平台支持,可在Linux,Windows,Mac上运行;
  • 轻量级,和其他测试工具相比更加灵活性;

3

Jmeter支持的测试场景

  • Web - HTTP, HTTPS (Java, NodeJS, PHP, ASP.NET, …);
  • SOAP / REST Webservices;
  • FTP;
  • 通过JDBC连接数据库(支持各种数据库);
  • LDAP;
  • 通过JMS的面向消息的中间件(MOM);
  • 邮箱协议 - SMTP(S), POP3(S) and IMAP(S);
  • 本机命令或Shell脚本;
  • TCP;
  • Java Objects;

4

Jmeter工作原理

Jmeter可以作为web服务器与浏览器或者手机App应用的代理网关,以便捕获浏览器的请求和web服务器的响应,如此就可以很容易地生成性能测试脚本。有了性能测试脚本,Jmeter就可以通过线程来模拟真实用户对web服务器的访问压力,这与LoadRunner的工作原理基本一致。

5

Jmeter和Loadrunner的区别

开发语言不同:

  • LoadRunner 主要是C语言开发,支持 Java 、VB 、C#;
  • Jmeter 是纯 Java 开发,支持 Java 脚本语言;

安装方式不同:

  • Jmeter安装简单,解压即可使用;
  • LR安装比较繁杂,安装时间久,安装包也比较大;

软件工具的费用学习成本不同:

  • LoadRunner 商业工具,费用高昂,JMeter 完全免费;
  • LoadRunner 学习成本更低,强大的录制功能,效率高、门槛低,用的

人多经验分享也多,所以相对更容易上手;

  • JMeter 相对来说学习资料会少一些,插件比较多,学习成本相对较大;

兼容性不同:

  • LoadRunner 支持市面上几乎所有见到的应用的性能测试,不管你是 C、Java 、VB 、 JavaScript 、C#开发的程序,还是数据库( Oracle 、MySQL 、SQLServer) 应用;本地程序也好,远程调用也好; C/S 模式还是 B/S 模式甚至移动终端都可以不负使命来完成;
  • JMeter 虽然没有其强大的兼容性,但也能够完成上面的所有工作,只不过有些需要自己来扩展这些功能,如果能够简单编程,这些都不是问题;

分析器不同:

  • LoadRunner 的结果分析器十分强大;
  • JMeter 需要在第三方插件的扩展下才具备与 LoadRunner 相媲美的体验;

JDK与Jmeter环境安装

由于Jmeter 是Java 语言编写的,安装Jmeter前,我们需要确保配置好Java运行环境,故需要安装 JDK,并配置 JDK 的环境变量。

1

JDK安装及环境变量配置

① JDK官网下载地址传送门:

https://www.oracle.com/java/technologies/javase-downloads.html

进入官网找到与电脑的系统位数对应的32位或64位JDK版本自行下载,比如选择windows64位的安装包,jdk-8u241-windows-x64.exe即可。也可以在微信公众号后台回复"20191004"获取JDK 1.7或JDK 1.8安装包。

②下载完,点击默认安装即可。

③配置环境变量,依次操作:"我的电脑" 右键菜单->属性->高级系统设置->环境变量->系统变量。

主要配置以下环境: •JAVA_HOME【C:\Program Files\Java\jdk1.8.0_77】 • Path【;%JAVA_HOME%\bin;%JAVA_HOME%\jre\bin;】 •CLASSPATH【.;%JAVA_HOME%\lib;%JAVA_HOME%\lib\tools.jar】

首先,在系统变量里新建"JAVA_HOME"变量,变量值为Java的安装路径:

变量名:JAVA_HOME 变量值:C:\Program Files\Java\jdk1.8.0_77 (直接复制JDK安装路径)

接下来,设置"Path"环境变量,该变量已存在,所以在列表中选择Path,点击下方的“编辑”按钮,在弹出的窗口中添加如下信息:

变量名:Path 变量值:%JAVA_HOME%\bin;%JAVA_HOME%\jre\bin;

最后,在系统变量里新建"CLASSPATH"变量及变量值:

变量名:CLASSPATH 变量值:.;%JAVA_HOME%\lib;%JAVA_HOME%\lib\tools.jar (注意最前面有一个点)

配置好环境变量后,可以进入cmd中检查Java是否安装正确,检查的命令为 java -version,若如图所示显示版本信息则说明安装和配置成功,恭喜成功安装JDK!

2

Windows下Jmeter安装及环境变量配置

①Jmeter官网下载地址传送门:

https://jmeter.apache.org/download_jmeter.cgi

目前的Jmeter最新版本为5.3。

有的小伙伴可能不知道下载哪一个。

  • 一般软件会有两个版本发布:Source 和 Binaries;
  • Source 是源代码版,需要自己编译成可执行软件;
  • Binaries是可执行版,直接可以拿来用的,已经给你编译好的版本;
  • tgz后缀的一般是linux版本,zip一般windows版本;

如果电脑是windows, 那么直接下载Binaries里后缀为zip的文件。

还有一点需要注意,JDK版本需要和Jmeter版本对应:

  • Jmeter2.x:最低jdk1.6;    
  • Jmeter3.0/3.1:最低jdk1.7;          
  • Jmeter3.2/3.3:最低jdk1.8; 
  • Jmeter4.0/5.0:最低jdk1.8;

②下载完成后,解压即可使用,解压后的目录如下:

③JMeter环境变量配置,依次操作:"我的电脑" 右键菜单->属性->高级系统设置->环境变量->系统变量。

主要配置以下环境: • JMeter_HOME【D:\software\dev\jmeter\apache-jmeter-5.3】 • CLASSPATH【%JMETER_HOME%\lib\ext\ApacheJMeter_core.jar;% ;JMETER_HOME%\lib\jorphan.jar;%JMETER_HOME%\lib\logkit-1.2.jar;】

首先,在系统变量里新建“JMeter_HOME”变量,变量值为Jmeter的安装路径:

变量名:JMeter_HOME 变量值:D:\software\dev\jmeter\apache-jmeter-5.3 (直接复制路径)

接下来,“CLASSPATH”变量,变量值中添加变量值,如下:

变量名:CLASSPATH 变量值:%JMETER_HOME%\lib\ext\ApacheJMeter_core.jar;% JMETER_HOME%\lib\jorphan.jar;%JMETER_HOME%\lib\logkit-1.2.jar;

④配置完后,确定即可。依次点击bin->jmeter.bat,启动Jmeter程序。

耐心等待一下,出现Jmeter主界面,代表运行成功。

3

Mac下Jmeter安装及启动

①Jmeter官网下载地址传送门:

https://jmeter.apache.org/download_jmeter.cgi

选择以tgz结尾的安装包进行下载,下载后解压到对应的目录,如:/Users/coco/soft/apache-jmeter-5.2.1

②启动Jmeter。首先,打开终端(Terminal)进入 bin 目录,coco的Jmeter目录是:cd /Users/coco/soft/apache-jmeter-5.2.1/bin

然后,执行命令:sh jmeter 回车。弹出Jmeter 软件窗口后,即表示运行成功,打开的图形界面如下。

4

Jmeter目录结构介绍

Jmeter目录结构如下所示:

1.bin目录——可执行文件、配置文件

bin目录常用文件介绍:

  • examples:目录下包含Jmeter使用实例,CSV样例;
  • ApacheJMeter.jar:JMeter源码包;
  • jmeter.bat:windows下启动文件;
  • jmeter.sh:Linux下启动文件;
  • jmeter.log:Jmeter运行日志文件;
  • jmeter.properties:Jmeter配置文件;
  • jmeter-server.bat:windows下启动负载,生成器服务文件;
  • jmeter-server:Linux下启动负载生成器文件;
  • report-template :报告模板;
  • templates :脚本模板;
  1. docs——Jmeter API文档,CSS样式,图片文件;
  2. extras——扩展插件包,提供了对Ant的支持文件,可也用于持续集成;
  3. lib——插件目录,存放Jmeter依赖的jar包,同时安装插件也放于此目录;
  • ext :Jmeter依赖的核心jar包、插件包
  • junit :junit测试脚本
  1. licenses目录——软件许可证书;
  2. printable_docs目录——Jmeter用户手册;

Jmeter实战小例子

既然Jmeter安装成功了,我们就运行一个接口小例子玩玩,如果现在看不懂也没关系,后续系列文章将详细介绍。

①Test Plan右键菜单,依次选择Add-->Threads(Users)-->Thread Group,建立一个线程组。

②Thread Group右键菜单,依次选择Add-->Sampler-->HTTP Request,建立一个http请求。

配置接口的请求类型、域名或ip、参数等信息。这里我们用一个实时段子接口:

https://api.apiopen.top/getJoke?page=1&count=2&type=video

③Thread Group右键菜单,依次选择Add-->Listener-->View Results Tree,用来查看运行结果。

④点击运行按钮或快捷键Ctrl+R,运行程序。

⑤运行结果如下:

以上

That‘s all

更多系列文章

本文分享自微信公众号 - ITester软件测试小栈(ITestingA),作者:胖虎喝酸奶

原文出处及转载信息见文内详细说明,如有侵权,请联系 yunjia_community@tencent.com 删除。

原始发表时间:2020-05-20

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • APP测试流程及测试点总结

    测试周期可按项目的开发周期来确定测试时间,一般测试时间为两三周(即15个工作日),根据项目情况以及版本质量可适当缩短或延长测试时间。正式测试前先向主管确认项目排...

    ITester软件测试小栈
  • MyEclipse10破解安装及Java环境基本配置

    首先安装及配置JDK环境,主要分为如下步骤:安装JDK-配置环境变量-检查是否安装成功。

    ITester软件测试小栈
  • Selenium自动化测试-3.元素定位(1)

    一个页面最基本组成单元是元素,想要定位一个元素,我们需要特定的信息来说明这个元素的唯一特征。

    ITester软件测试小栈
  • 《CLR via C#》Part2之Chapter4 类型基础(二)

    CLR最重要的特性之一是安全性,在运行时,通过调用GetType(),总是知道一个对象的确切类型。

    Isaac Zhang
  • letswave7中文教程4:脑电数据预处理-时域分析

    在管理器模块数据列表中选择数据集“sp_filter ica chan_interp butt sel_chan sub093”,在菜单中点击Process->...

    脑机接口社区
  • R语言学习 - 柱状图

    柱状图绘制 柱状图也是较为常见的一种数据展示方式,可以展示基因的表达量,也可以展示GO富集分析结果,基因注释数据等。 常规矩阵柱状图绘制 有如下4个基因在5组样...

    生信宝典
  • JVM报错:Failed to write core dump. Core dumps have been disabled.

    版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。 ...

    程裕强
  • 2.Elasticsearch和Java交互 -- java操作es

    如果你正在使用 Java,在代码中你可以使用 Elasticsearch 内置的两个客户端:

    IT云清
  • 混合云托管的自助服务未来

    预计在未来三年,混合云的采用将是当前的三倍。而随着混合云的发展,企业用户也在积极的寻找更好的方式来管理他们的混合托管基础设施需求。 在现如今这样一个数字化的世界...

    静一
  • Oracle 20c 新特性:缺省的只读 Oracle HOME 支持

    墨墨导读:在 20c 之前,缺省的 ORACLE_HOME 布局将 ORACLE_HOME、ORACLE_BASE_HOME 和 ORACLE_BASE_CON...

    数据和云

扫码关注云+社区

领取腾讯云代金券