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软件测试小栈

往期内容宠幸

1.Python接口自动化-接口基础(一)


2.Python接口自动化-接口基础(二)


3.Python接口自动化-requests模块之get请求


4.Python接口自动化-requests模块之post请求


5.Python接口自动化之cookie、session应用


6.Python接口自动化之Token详解及应用


7.Python接口自动化之requests请求封装


8.Python接口自动化之pymysql数据库操作


9.Python接口自动化之logging日志


10.Python接口自动化之logging封装及实战

想获取更多最新干货内容

快来星标 置顶 关注我

每周一、三、五 07:30见

<<  滑动查看下一张图片  >>

今日问题

今天是520,在这甜得有点腻的日子,你准备怎么过节呢?

(欢迎在文末下方留言区撒下你的狗粮)

留言福利:

抽取截止至5月24日留言点赞最多的三位幸运er,可获得:腾讯视频一个月VIP会员

(幸运er名单将在下周一推文的置顶留言处公布)

后台 回复"资源"取干货

回复"21天打卡"一起打怪升级

测试交流Q群:727998947

点亮一下在看,你更好看

Jmeter系列之简介与环境安装相关推荐

  1. python学习笔记1之-python简介及其环境安装

    python学习笔记之-python简介及其环境安装 最近几年python之火不用多说,最近开始利用时间自学python,在学习的过程中,按照自己的思路和理解记录下学习的过程,并分享出来,如果正好你也 ...

  2. 【BootStrap】Bootstrap简介、环境安装与基本模板

    转载请注明出处:http://blog.csdn.net/qq_26525215 本文源自[大学之旅_谙忆的博客] BootStrap简介 什么是BootStrap 它由Twitter的设计师Mark ...

  3. elasticsearch 客户端工具_1分钟系列-Elasticsearch 简介与单机版安装

    Elasticsearch 简介 Elasticsearch 是一个分布式的开源搜索和分析引擎,适用于所有类型的数据,包括文本.数字.地理空间.结构化和非结构化数据.Elasticsearch 在 A ...

  4. Scala基础教程(一):简介、环境安装

    Scala基础语法 如果有很好的了解Java语言,那么将很容易学习Scala. Scala和Java间的最大语法的区别在于;行结束符是可选的.考虑Scala程序它可以被定义为通过调用彼此方法进行通信的 ...

  5. python简介及环境安装

    Python的创始人为荷兰人吉多·范罗苏姆 .1989年圣诞节期间,在阿姆斯特丹,Guido为了打发圣诞节的无趣,决心开发一个新的脚本解释程序,作为ABC语言的一种继承. Python是一种跨平台的计 ...

  6. 奶奶看了都会系列:Python3 IDE环境安装

    目录 为什么要选择Python? 安装路线选择及原因 目标和原因 系统要求 过程 Python3的下载和安装 安装Anaconda 步骤 验证conda已被安装 安装 Pycharm 环境的配置 尝试 ...

  7. java简介以及环境安装

    java2标准版, JavaSE,桌面程序,控制台开发 java2标准版, JavaME,嵌入式开发,手机,小家电 java2标准版,JavaEE,E企业级开发,服务器,WEB端,服务端 [外链图片转 ...

  8. Ionic简介和环境安装

    什么是Ionic Ionic是一个用来开发混合手机应用的,开源的,免费的代码库.可以优化html.css和js的性能,构建高效的应用程序,而且还可以用于构建Sass和AngularJS的优化.ioni ...

  9. Jmeter系列之no-gui模式

    VOL 141 15 2020-07 今天距2021年169天 这是ITester软件测试小栈第141次推文 点击上方蓝字"ITester软件测试小栈"关注我,每周一.三.五早上  ...

最新文章

  1. IOS中的JSON数据的解析
  2. pid控制从入门到精通pdf_【应用指南】PID调节让流量/压力控制又快又稳
  3. oracle SQL not in null,单列,复合列
  4. DirectoryEntry所有字段对应解释
  5. Django--form验证及错误处理
  6. Linux字符设备与块设备的区别与比较
  7. chengxuyuan
  8. php串行化场景,PHP中串行化的使用
  9. CCFollow和ActionCallFunc
  10. 关于Keil4 转到 Keil5以后的一些错误解决
  11. ASP.NET(第七章数据插入与更新:DataList)-asp.net关注
  12. halcon 旋转_HALCON高级篇:面阵相机模型及其坐标转换
  13. 十万个为什么之为什么大家都说dubbo
  14. 如何安装和配置 AngularJS Eclipse
  15. django高级之缓存与信号
  16. oracle asm掉盘,ASM Disk丢失的临时解决方法
  17. 在火狐(Firefox)浏览器中安装IE Tab插件
  18. vue 自动播放语音
  19. Office Word 目录制作页码右对齐方法
  20. 看到这些网络骗局信息,请千万留个心眼

热门文章

  1. filter2D函数的.depth()变量的设定
  2. Core Data数据操作
  3. 图片资源加载路径分析以及netbeans打包java程序,并包含图片资源
  4. 随想录(熟练掌握uml)
  5. linux驱动编写(usb host驱动入门)
  6. Android九宫格闪烁,js实现九宫格点击按钮随机三个格子闪烁,发生错误
  7. 如何学习C语言,超详细的经验分享(学习笔记1--C语言的基本数据类型)
  8. 一纬度横直线等于多公里_必备 | 高中物理必修一、必修二知识点提纲,预习复习一次搞定!...
  9. 5课件制作_【计算机论文】虚拟现实技术下多媒体课件开发的流程
  10. ctfshow-萌新-web8( 从删库到跑路)