Jmeter简介及使用场景

一、什么是Jmeter?

    JMeter是100%纯JAVA桌面应用程序,被设计为用于测试客户端/服务端结构的软件(例如web应用程序)。它能进行功能测试、接口测试、最主要的还是用于模拟负载进行性能测试。。JMeter可用于模拟大量负载来测试一台服务器,网络或者对象的健壮性或者分析不同负载下的整体性能。

    JMeter与LoadRunner比较

        JMeter 是一款开源(有着典型开源工具特点:界面不美观)测试工具,虽然与LoadRunner相比有很多不足,比如:它结果分析能力没有LoadRunner详细

        但是它的优点也有很多:

            开源,他是一款开源的免费软件,使用它你不需要支付任何费用

            小巧,相比LR的庞大(最新LR11将近4GB),它非常小巧,不需要安装,但需要JDK环境,因为它是使用java开发的工具。

            功能强大,Jmeter设计之初只是一个简单的web性能测试工具,但经过不段的更新扩展,现在可以完成数据库、FTP、LDAP、WebService等方面的测试。因为它的开源性,当然你也可以根据自己的需求扩展它的功能。

    两者最大的区别:Jmeter不支持IP欺骗,而LR支持。

    JMeter缺点

        使用JMeter无法验证JS程序,也无法验证页面UI,所以要须要和Selenium配合来完成Web2.0应用的测试。

二、Jmeter的下载与运行

    1.Windows下Jmeter下载安装,登录 http://jmeter.apache.org/download_jmeter.cgi ,根据自己平台,下载对应文件

2.安装JAVA环境

   安装JDK,配置环境变量(具体步骤不做介绍)

3.将下载Jmeter文件解压,进入 bin 目录运行 jmeter.bat 启动Jmeter

    注意:打开的时候会有两个窗口,JMeter的命令窗口和JMeter的图形操作界面,不可以关闭命令窗口。

4. JMeter的classpath:

  如果你想添加其他JAR文件到JMeter的classpath中,你必须复制他们到lib目录中;

  如果你开发了一个JMeter特定组件或有效的jar文件,复制到lib目录下的ext目录中。

5. 打开之后显示的是中文,如果你想使用其他语言,比如英文,那么通过菜单选项->选择语言->英文即可,当然转为中文也是同样操作。

三. 使用Jmeter测试快速入门

进程: 一个正在执行的程序对应一个进程

线程: 一个进程有多个执行线程

线程组:  按照线程性质对线程分组。查看任务管理器(爱奇艺有多个)

三者关系: 一个进程有多个线程组,一个线程组有多个线程

    测试计划—线程组—线程组属性中的线程数

    并发执行:多个线程同时执行,特点:执行结束的顺序与开始的顺序不一致

    顺序执行:按照线程的启动顺序挨个执行

    默认情况下,线程组中的线程是并发执行

    每一个线程都要执行组内的http请求

    设置线程组顺序执行:勾选测试计划中的(独立运行每个线程组)

    线程组用来模拟用户的并发访问

1.创建线程组

2. 线程组主要包含三个参数:

    线程数、准备时长(Ramp-Up Period(in seconds))、循环次数。

3.线程数:

    虚拟用户数。一个虚拟用户占用一个线程。设置多少虚拟用户数在这里也就是设置多少个线程数。

4.准备时长(秒):

    设置的虚拟用户数需要多长时间全部启动。如果线程数为20 ,准备时长为10 ,那么需要10秒钟启动20个线程。也就是每秒钟启动2个线程。

5. 循环次数:

    每个线程发送请求的次数。如果线程数为20 ,循环次数为100 ,那么每个线程发送100次请求。总请求数为20*100=2000 。如果勾选了“永远”,那么所有线程会一直发送请求,一直到选择停止运行脚本。

6. 调度器

    设置线程组启动的开始时间和结束时间(配置调度器时,需要勾选循环次数为永远)

7. 持续时间(秒)

    测试持续时间,会覆盖结束时间

8. 启动延迟(秒)

    测试延迟启动时间,会覆盖启动时间

9. 启动时间

    测试启动时间,启动延迟会覆盖它。当启动时间已过,手动只需测试时当前时间也会覆盖它。

10.  结束时间

    测试结束时间,持续时间会覆盖它。

11.创建http请求

12.指定请求域,请求路径

一个HTTP请求有着许多的配置参数,下面将详细介绍:

    名称:本属性用于标识一个取样器,建议使用一个有意义的名称。

    注释:对于测试没有任何作用,仅用户记录用户可读的注释信息。

    服务器名称或IP :HTTP请求发送的目标服务器名称或IP地址。

    端口号:目标服务器的端口号。

    方法:发送HTTP请求的方法,可用方法包括GET、POST、HEAD、PUT、OPTIONS、TRACE、DELETE等。

    Content encoding :内容的编码方式,默认值为iso8859

    路径:目标URL路径(不包括服务器地址和端口)

    点击run测试,很麻烦,我们使用postman测试更简单,使用postman操作。

可以使用刚才的接口文档中的,聚合接口中演示一个。

13.设置对应的查看内容

注意:如果监听器中有jp@gc开头的,都是第三方插件

14.查看表格信息

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容