JMeter学习笔记--工具简单介绍
一、JMeter 介绍
Apache JMeter是纯JAVA桌面应用程序,被设计为用于测试客户端/服务端结构的软件(例如web应用程序)。它可以用来测试静态和动态资源的性能,例如:静态文件,Java Servlet,CGI Scripts,Java Object,数据库和FTP服务器等等。JMeter可用于模拟大量负载来测试一台服务器,网络或者对象的健壮性或者分析不同负载下的整体性能。
同时,JMeter可以帮助你对应用程序进行回归测试。通过创建的测试脚本和assertions来验证你的程序返回了所期待的值。为了更高的适应性,JMeter允许使用正则表达式来创建这些assertions.
JMeter与LoadRunner比较
JMeter 是一款开源(界面不美观)测试工具,虽然与LoadRunner相比有很多不足,比如:它结果分析能力没有LoadRunner详细;但它的优点也有很多:
多线程框架--支持多并发
用于对服务器模拟负载
支持web\数据库\FTP各种服务器系统的性能测试
可进行二次开发
- 开源,免费使用。
- 小巧,无需安装,有JDK即可使用。
- 功能强大,可以完成数据库、FTP、LDAP、WebService等方面的测试。因为它的开源性,可以进行二次开发。
两者最大的区别:jmeter不支持IP欺骗,而LR支持。
JMeter缺点
使用JMeter无法验证JS程序,也无法验证页面UI,所以需要和Selenium配合来完成Web2.0应用的测试。
二、JMeter 下载安装
1)JMeter安装
1. http://jmeter.apache.org/下载最新版本的JMeter,解压文件到任意目录
2. 安装JDK(java开发工具包),配置环境变量JAVA_HOME.PATH.CLASSPATH
3. 系统要求:JMeter2.11 需要JDK1.6以上的版本支持运行
4. JMeter可以运行在如下操作系统上:Unix,Linux,MAC,Windows和Open VMS.
2)JMeter插件安装
1. 插件下载地址: http://jmeter-plugins.org/downloads/all/
2. 插件下载后解压:找到JMeterPlugins-Extras.jar,把JMeterPlugins-Extras.jar放到apache-jmeter-2.12\lib\ext目录。
三、JMeter目录结构
- bin:包含JMeter的主jar包,以及相关脚本和配置文件
- docs:存放API文档,主要用于二次开发
- extras:附加目录,JMeter和其他应用集成需要的文档
- lib:JMeter启动时默认的classpath路径,所有需要的引入的类及jar包都在该目录下,修改后需要重启生效
Lib\ext:用来存放第三方的组件和插件,与lib的区别,是继承了GUI框架的,在jmeter的GUI界面可见
printable_docs:存放jmeter提供的官方帮助文档
四、JMeter 运行
1. 进入bin目录运行jmeter.bat启动jmeter
注意:打开的时候会有两个窗口,JMeter的命令窗口和JMeter的图形操作界面,不可以关闭命令窗口。
每台机器能创建多少用户数,---》由(内存)物理内存(电脑32G)决定,jmeter是java进程,进程需要一定的内存资源(堆内存),JMeter通过主从的方式进行分布式(jmeter - server)内存。
一台机器能虚拟多少用户数,由两部分组成,一部分是本机的物理内存有多大,二部分给jmeter进程的给了多大的堆内存。
端口号分配不均匀、不合理,性能测试也会有问题。
2. JMeter的classpath:
如果添加其他JAR文件到JMeter的classpath中,必须复制其到lib目录中;
如果开发了一个JMeter特定组件或有效的jar文件,要复制到lib目录下的ext目录中。
3. 打开之后显示的是中文,如果你想使用其他语言,比如英文,那么通过菜单选项->选择语言->英文即可,当然转为中文也是同样操作。
Windows的工作原理:
dos里面运行某个指令,把dos比作列表,列表里会有path,JMeter会到path里去找,有的话正常运行,没有的话,就会提示不是内部或外部指令。
windows与linux系统差别:
JMeter学习笔记--工具简单介绍的更多相关文章
- JMeter学习笔记02-基础介绍
基本构成 1)负载发生器:产生负载,多线程模拟用户行为 2)用户运行期:脚本运行引擎,用户运行器附加在线程上,根据指定脚本模拟指定的用户行为 3)资源发生器:生成测试过程中服务器.负载机的资源数据 4 ...
- 【转载】JMeter学习(一)工具简单介绍
JMeter学习(一)工具简单介绍 一.JMeter 介绍 Apache JMeter是100%纯JAVA桌面应用程序,被设计为用于测试客户端/服务端结构的软件(例如web应用程序).它可以用来测试静 ...
- JMeter学习工具简单介绍
JMeter学习工具简单介绍 一.JMeter 介绍 Apache JMeter是100%纯JAVA桌面应用程序,被设计为用于测试客户端/服务端结构的软件(例如web应用程序).它可以用来测试静态 ...
- HTML+CSS学习笔记(1) - Html介绍
HTML+CSS学习笔记(1) - Html介绍 1.代码初体验,制作我的第一个网页 <!DOCTYPE HTML> <html> <head> <meta ...
- Typescript 学习笔记一:介绍、安装、编译
前言 整理了一下 Typescript 的学习笔记,方便后期遗忘某个知识点的时候,快速回忆. 为了避免凌乱,用 gitbook 结合 marketdown 整理的. github地址是:ts-gitb ...
- JSP学习笔记(三):简单的Tomcat Web服务器
注意:每次对Tomcat配置文件进行修改后,必须重启Tomcat 在E盘的DATA文件夹中创建TomcatDemo文件夹,并将Tomcat安装路径下的webapps/ROOT中的WEB-INF文件夹复 ...
- cocos2d-x入门学习笔记,主要介绍cocos2d-x的基本结构,并且介绍引擎自带的示例
cocos2d-x 3.0 制作横版格斗游戏 http://philon.cn/post/cocos2d-x-3.0-zhi-zuo-heng-ban-ge-dou-you-xi http://blo ...
- InterSystems Ensemble学习笔记(一) Ensemble介绍及安装
系列目录 InterSystems Ensemble学习笔记(一) Ensemble介绍及安装InterSystems Ensemble学习笔记(二) Ensemble创建镜像, 实现自动故障转移 一 ...
- JAVA WEB学习笔记(三):简单的基于Tomcat的Web页面
注意:每次对Tomcat配置文件进行修改后,必须重启Tomcat 在E盘的DATA文件夹中创建TomcatDemo文件夹,并将Tomcat安装路径下的webapps/ROOT中的WEB-INF文件夹复 ...
随机推荐
- python json格式化打印
编写python脚本,调试的时候需要打印json格式报文,直接打印看不出层次,可以使用json.dumps格式化打印 import json import requests def test_json ...
- FastAPI logger日志记录方案 loguru模块
实现方式: 采用 loguru 模块.跟flask直接挂载到app上有区别,当然也可以尝试去这样做. 但是 好像没有这个必要.要的就是个快速.整那些子虚乌有的东西完全木有意义. 1.首先是去项目git ...
- android web外壳
参考: 1.https://blog.csdn.net/m0_37201243/article/details/106862817 2.https://www.cnblogs.com/ifaswind ...
- P7295-[USACO21JAN]Paint by Letters P【平面图欧拉公式】
正题 题目链接:https://www.luogu.com.cn/problem/P7295 题目大意 给出\(n*m\)的网格,每个格子上有字母,相同字母的四联通相邻格子为连通,每次询问一个子矩阵求 ...
- Keras函数——mode.fit_generator()
1 model.fit_generator(self,generator, steps_per_epoch, epochs=1, verbose=1, callbacks=None, validati ...
- kubelet源码分析——kubelet简介与启动
kubelet是k8s集群中一个组件,其作为一个agent的角色分布在各个节点上,无论是master还是worker,功能繁多,逻辑复杂.主要功能有 节点状态同步:kublet给api-server同 ...
- EF Core Sequence contains no elements
一.在.Net Core中使用Ef的聚合函数报错: 类似函数: 1,使用FirstOrDefault() 来代替 First() 2.使用SingleOrDefault 来代替 Single 3.使用 ...
- Java 使用 Socket 实现客户端和服务器的信息交互
服务器 public class Server{ private ServerSocket serverSocket; private Socket socket; private BufferedR ...
- Bert文本分类实践(一):实现一个简单的分类模型
写在前面 文本分类是nlp中一个非常重要的任务,也是非常适合入坑nlp的第一个完整项目.虽然文本分类看似简单,但里面的门道好多好多,作者水平有限,只能将平时用到的方法和trick在此做个记录和分享,希 ...
- instanceof和类型转换
什么是instanceof 判断一个对象是什么类型 注意点 X 和 Y 必须要有父子关系 否则编译都会失败 X对象只要是Y的子类(无论 是 儿子 还是 孙子 还是 曾孙....)X instanceo ...