一、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学习笔记--工具简单介绍的更多相关文章

  1. JMeter学习笔记02-基础介绍

    基本构成 1)负载发生器:产生负载,多线程模拟用户行为 2)用户运行期:脚本运行引擎,用户运行器附加在线程上,根据指定脚本模拟指定的用户行为 3)资源发生器:生成测试过程中服务器.负载机的资源数据 4 ...

  2. 【转载】JMeter学习(一)工具简单介绍

    JMeter学习(一)工具简单介绍 一.JMeter 介绍 Apache JMeter是100%纯JAVA桌面应用程序,被设计为用于测试客户端/服务端结构的软件(例如web应用程序).它可以用来测试静 ...

  3. JMeter学习工具简单介绍

    JMeter学习工具简单介绍   一.JMeter 介绍 Apache JMeter是100%纯JAVA桌面应用程序,被设计为用于测试客户端/服务端结构的软件(例如web应用程序).它可以用来测试静态 ...

  4. HTML+CSS学习笔记(1) - Html介绍

    HTML+CSS学习笔记(1) - Html介绍 1.代码初体验,制作我的第一个网页 <!DOCTYPE HTML> <html> <head> <meta ...

  5. Typescript 学习笔记一:介绍、安装、编译

    前言 整理了一下 Typescript 的学习笔记,方便后期遗忘某个知识点的时候,快速回忆. 为了避免凌乱,用 gitbook 结合 marketdown 整理的. github地址是:ts-gitb ...

  6. JSP学习笔记(三):简单的Tomcat Web服务器

    注意:每次对Tomcat配置文件进行修改后,必须重启Tomcat 在E盘的DATA文件夹中创建TomcatDemo文件夹,并将Tomcat安装路径下的webapps/ROOT中的WEB-INF文件夹复 ...

  7. 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 ...

  8. InterSystems Ensemble学习笔记(一) Ensemble介绍及安装

    系列目录 InterSystems Ensemble学习笔记(一) Ensemble介绍及安装InterSystems Ensemble学习笔记(二) Ensemble创建镜像, 实现自动故障转移 一 ...

  9. JAVA WEB学习笔记(三):简单的基于Tomcat的Web页面

    注意:每次对Tomcat配置文件进行修改后,必须重启Tomcat 在E盘的DATA文件夹中创建TomcatDemo文件夹,并将Tomcat安装路径下的webapps/ROOT中的WEB-INF文件夹复 ...

随机推荐

  1. GUI自动化测试遇到的问题

    学习接口自动化测试框架或工具,UI自动化测试框架或工具,有时会觉得知识似乎比较零散,死记硬背不是一个好方法.一个学习的思路是思考使用这些框架或工具的时候,可能会遇到什么问题,遇到这些问题可以通过什么方 ...

  2. nginx rewrite重写规则集合

    本文根据网络搜索整理,不是原创 一.正则表达式匹配,其中: ~ 为区分大小写匹配 ~* 为不区分大小写匹配 !~和!~* 分别为区分大小写不匹配及不区分大小写不匹配 . 匹配除换行符以外的任意字符 \ ...

  3. css Table 表格宽度失效解决方案

    使用div包裹内容进行支撑 <table cellspacing="0"> <caption>89 HOLLAND ROAD SINGAPORE 27575 ...

  4. Abp vNext 番外篇-疑难杂症丨浅谈扩展属性与多用户设计

    说明 Abp vNext基础篇的文章还差一个单元测试模块就基本上完成了我争取10.1放假之前给大家赶稿出来,后面我们会开始进阶篇,开始拆一些东西,具体要做的事我会单独开一个文章来讲 缘起 本篇文章缘起 ...

  5. P3760-[TJOI2017]异或和【树状数组】

    正题 题目链接:https://www.luogu.com.cn/problem/P3760 题目大意 给出\(n\)个数字的一个序列\(a\),求它所有区间和的异或和 \(n\leq 10^5,\s ...

  6. YbtOJ#652-集合比较【Treap】

    正题 题目链接:http://www.ybtoj.com.cn/problem/652 题目大意 定义一个元素为一个有序集合包含两个元素\(C=\{A,B\}\) 集合\(C=\{A,B\}\)的大小 ...

  7. 安装Transformers与ValueError: Unable to create tensor, you should probably activate truncation and/or padding with 'padding=True' 'truncation=True' to have batched tensors with the same length.报错

    此篇博客内容为短暂存留记录(项目使用过程还未记录),后续将会更新完整学习流程.. 1.根据官网上的链接安装有两种方式: (1)pip直接安装 pip install transformers # 安装 ...

  8. t-SNE 从入门到放弃

    t-SNE 算法 1 前言 t-SNE 即 t-distributed stochastic neighbor embedding 是一种用于降维的机器学习算法,在 2008 年由 Laurens v ...

  9. SpringBoot-使用异步

    SpringBoot提供了异步的支持,上手使用十分的简单,只需要开启一些注解支持,配置一些配置文件即可! 编写方法,假装正在处理数据,使用线程设置一些延时,模拟同步等待的情况: service: @S ...

  10. python中return的返回和执行

    1 打印函数名和打印函数的执行过程的区别 例子1.1 def a(): print(111) print(a) # 打印a函数的内存地址,不会对a函数有影响,a函数不会执行 print(a()) # ...