Jmeter 01 -概述&线程组

1、Jmeter:概述

1.1 是什么?

        Jmeter是Apache公司使用Java 开发的一款测试工具

1.2 为什么?

        高效、功能强大

        模拟一些高并发或多次循环等特殊场景

1.3 怎么用?

下载安装

  • 1、下载jmeter,解压缩
  • 2、安装Java环境(jmete 和 Java 环境的关系,类似于MP3文件和播放器关系)

        注意:安装路径不能有中文字符、空格

        安装JDK +JRE

点击下图的文件,代表文件安装成功

Jmeter 01 -概述&线程组_第1张图片

  • 3、简单了解Jmeter 的目录结构

                bin:存储了Jmeter的可执行程序,比如启动程序

                lib : 存储了Jmeter整合的功能(一些.jar文件的小程序)

Jmeter 01 -概述&线程组_第2张图片

  • 4、启动Jmeter

                启动方式1:bin/ApacheJMeter.jar双击

                启动方式2:存储了Jmeter整合的功能(一些.jar文件的小程序)

                                        jmeter.sh  linux下的启动程序

  • 5、编写一个Jmeter版本的测试案例

Jmeter 01 -概述&线程组_第3张图片Jmeter 01 -概述&线程组_第4张图片Jmeter 01 -概述&线程组_第5张图片Jmeter 01 -概述&线程组_第6张图片Jmeter 01 -概述&线程组_第7张图片Jmeter 01 -概述&线程组_第8张图片Jmeter 01 -概述&线程组_第9张图片

1.4 Jmeter 的作用优点以及缺点(了解)

作用:

  • 接口测试
  • 性能测试:内在  ---------- 测程序的算法,程序的效率响应时间
  • 压力测试:外在  ---------- 并发用户数,最多用户数导致程序崩溃,外在负载
  • Web自动化测试
  • 数据库测试:测试数据库,通过程序实现连接数据库
  • JAVA程序测试

优点

  • 开源、免费
  • 支持多协议:http https  ftp ftps ....
  • 小巧
  • 功能强大

缺点

  • 不支持IP欺骗 
  • 不支持前端测试

2、Jmeter组件:线程组

Jmeter:内置许多小功能()

2.1  是什么?

进程:一个正在执行的程序就对应一个线程,一个进程里面可以同时执行多个线程(比如百度网盘上传多张图片的同时也可以看网盘的内容,如视频)

Jmeter 01 -概述&线程组_第10张图片

  • 线程:进程中的执行线索(一个进程有多个执行线索)
  • 线程组:按照线程性质对线程进行分组,为了方便管理线程(如班级分组)
  • 并发执行:多个线程同时执行,如同时下载3部电影;特点:执行结束的顺序和线程启动的顺序不一定一致,如同时下载3部电影,先下载的不一定先下载完成,后下载的不一定后下载完成
  • 顺序执行:按照线程的启动顺序挨个执行,如播放音乐顺序播放

2.2 为什么?

方便管理

2.3 怎么用?(基本使用)

2.3.1  三者关系

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

  •         进程 ----  测试计划
  •         线程组 ---- 线程组
  •         线程 --- 线程组属性的线程数

Jmeter 01 -概述&线程组_第11张图片

例子:

Jmeter 01 -概述&线程组_第12张图片

Jmeter 01 -概述&线程组_第13张图片Jmeter 01 -概述&线程组_第14张图片

组01有2个,组02有3个,一共返回5个

2.3.2 线程组的默认情况下

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

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

2.3.3 怎么设置线程组顺序执行?

A、勾选测试计划的第一个复选框(独立运行每个线程组)

Jmeter 01 -概述&线程组_第15张图片Jmeter 01 -概述&线程组_第16张图片

2.3.4 介绍取样器

线程组练习--增删改查

1、将上图的建立的线程先禁用

Jmeter 01 -概述&线程组_第17张图片Jmeter 01 -概述&线程组_第18张图片

2、建立新线程Jmeter 01 -概述&线程组_第19张图片Jmeter 01 -概述&线程组_第20张图片

3、增加报文体数据和信息头

Jmeter 01 -概述&线程组_第21张图片

增加信息头,

记:Jmeter里万物皆组件

Jmeter 01 -概述&线程组_第22张图片Jmeter 01 -概述&线程组_第23张图片Jmeter 01 -概述&线程组_第24张图片

4、执行Jmeter 01 -概述&线程组_第25张图片5、增加删除操作

Jmeter 01 -概述&线程组_第26张图片Jmeter 01 -概述&线程组_第27张图片

2.4 练习:学生管理系统增删改查实现以及优化

        把共同属性(可复用并发)抽取出去,利用控件方式进行复用:可以使用http请求默认值抽取共同的ip端口号 |协议 | 编码集 | 等信息

        测试计划  -- >右击 --- >添加 ---> 配置文件  ---> http请求默认值

        作用:通过复用属性简化实现,提高测试效率

1、建立http请求默认值

Jmeter 01 -概述&线程组_第28张图片Jmeter 01 -概述&线程组_第29张图片

Jmeter 01 -概述&线程组_第30张图片

HTTP请求字段内容为空,使用默认值

Jmeter 01 -概述&线程组_第31张图片

2.5 线程组高级(初始化与销毁线程组)

实现了些内置功能 

2.5.1 线程组属性

  • 属性1: 线程数 --- 模拟用户数
  • 属性2: 时间值 --- 在指定时间内启动所有线程
  • 属性3:循环数 --- 单个用户访问的次数

如下图:

不一定几秒就在几秒内,和本身的性能有关

Jmeter 01 -概述&线程组_第32张图片

2.5.2 调度器 * 循环测试

  • 循环次数设置为永远
  • 设置启动延迟x 和持续时间y

                在x秒后访问数据,并持续y秒

  • 设置启动时间M和结束时间N(在版本5.6.2版本不存在了)

                在M时开始访问,在N时结束

注意事项:2和3实现不能同时使用,否则矛盾了

        

图片:

Jmeter 01 -概述&线程组_第33张图片Jmeter 01 -概述&线程组_第34张图片Jmeter 01 -概述&线程组_第35张图片

你可能感兴趣的:(jmeter)