如何创建一个完整的测试计划?

  1. 安装好JMeter后,通过根目录下的bin目录中的jmeter.bat启动JMeter

  2. 添加线程组(Thread Group)

    在 Test Plan 鼠标右键 Add—Threads(Users)-Thread Group 添加成功,如下图:

  3. 添加缓存(HTTP Cache Manager)

    在Thread Group鼠标右键Add-Config Element-HTTP Cache Manager 添加成功,如下图

  4. 添加Cookie(HTTP Cookie Manager)

    在Thread Group鼠标右键Add-Config Element-HTTP Cookie Manager 添加成功,如下图

  5. 以访问JMeter官网为例,在Test Plan中设置默认参数:jmeter.apache.org

  6. 添加HTTP请求(HTTP Request)

    在Thread Group鼠标右键Add-Sampler-HTTP Request 添加成功,如下图:



    在第3步时我们在Test Plan中设置了参数,在这里我们可以直接引用,在JMeter中引用参数为:${引用名称},因此请求参数配置如下:

  7. 添加查看结果树(View Results Tree)

    在Thread Group鼠标右键Add-Listener-View Results Tree 添加成功,如下图:



    一般情况下,我们创建测试计划都不止一个请求,这是我们可以复制HTTP请求修改成我们想要的请求数据,如下图:

  8. 在实际用户操作时,请求间一般时存在停顿的,我们可以通过定时器来解决停顿问题

    在请求接口添加定时器(Constant Timer),HTTP请求鼠标右键Add-Timer-Constant Timer 添加成功,如下图:

  9. 添加断言(Response Assertion)

    HTTP请求鼠标右键Add-Assertion-Response Assertion 添加成功,配置好断言的参数,如下图:



    在断言过程中断言失败会呈现红色并告知失败原因,反之则是绿色,如图:



    以上便是一个完整的测试计划

注意:

  • 对于请求同一个服务器的请求,我们可以通过添加请求默认值(HTTP Request Defaults)简化脚本

    在Thread Group鼠标右键Add-Config Element-HTTP Request Defaults 添加成功并配置好请求服务IP,如下图



    对于请求默认值:若HTTP请求中没有设置IP,则取当前线程组中请求默认值中的参数;若HTTP请求中已经设置IP,则取当前请求设置的IP。总的来说:当前请求(HTTP Request)的IP优先于请求默认值(HTTP Request Defaults)的IP

  • 在进行性能测试时,为更好的模拟真实用户,我们可以通过勾选HTTP请求中Advanced的值进行优化脚本,勾选嵌入资源,如下图:



    运行脚本后可看到所有的嵌入资源,同真实用户访问浏览器一样

  • 有时候我们需要用户在一定时间内逐渐进入,我们可以在Test Plan中请求数,以及启动时间,如下图:

  • 在有些请求还需要添加请求头(HTTP Header Manager)

    在Thread Group鼠标右键Add-Config Element-HTTP Header Manager 添加成功,如下图:

以上都是对创建一个完整的测试计划的详解,后期会对每个逐个讲解

性能测试工具JMeter 基础(三)—— 创建测试计划的更多相关文章

  1. 性能测试工具JMeter 基础(六)—— 测试元件: 线程组

    线程组的定义: 线程组是测试计划执行的入口,所有的逻辑控制器和取样器都必须在线程组下,其他的元件根据位置的不同作用域是不同的. 线程组是每个线程都是独立运行测试脚本,一个线程组就等于一个用户,通过多个 ...

  2. 性能测试工具JMeter 基础(五)—— 测试元件: 测试计划

    测试计划的定义: 测试计划是测试脚本的容器,定义了要执行什么.怎么执行对测试做总体的设置,且都是从线程组开始执行 在测试计划中可自定义用户变量(User Defined Variables),可通过A ...

  3. 性能测试工具JMeter 基础(二)—— 主界面介绍

    主界面介绍 JMeter的主界面主要分为菜单导航栏.工具栏.计划树标签栏.内容栏 菜单导航栏:全部的功能的都包含在菜单栏中 工具栏:相当于菜单栏常用功能的快捷按钮 计划树标签栏:显示测试用例(计划)相 ...

  4. 性能测试工具JMeter 基础(四)—— 录制脚本

    对于JMeter中HTTP请求除了手动添加以为还可以进行脚本录制,有两个方法: 使用badboy录制,录制完成后,将录制的文件导入JMeter中 使用JMeter自带的录制原件进行录制(HTTP(S) ...

  5. 性能测试工具JMeter 基础(九)—— 测试元件: 逻辑控制器之交替控制器

    交替控制器:根据被控制器触发执行次数,去依次执行控制器下的子节点(逻辑控制器.采样器),可以由线程组的线程数.循环次数.逻辑控制器触发. 交替控制器(lnterleave Controller) 简单 ...

  6. 性能测试工具JMeter 基础(一)—— 安装、配置环境变量

    JMeter下载 下载地址:https://jmeter.apache.org/download_jmeter.cgi 下载完成后解压后可直接使用,不用进行安装 环境变量配置 新增变量名:JMETER ...

  7. 性能测试工具JMeter 基础(八)—— 测试元件: 逻辑控制器之事物控制器

    事物控制器是将控制器下的所有取样器作为一个事物统计.分析 事物控制器(Transaction Controller) 事务控制器一共有两个选项: Generate parent sample:默认不勾 ...

  8. 性能测试工具JMeter 基础(七)—— 测试元件: 逻辑控制器之if逻辑控制器

    逻辑控制器线程组指定了其取样器执行的逻辑条件.顺序,并且执行顺序是按照位置顺序从上至下执行的 if逻辑控制器(If Controller) 在逻辑控制器中可设置条件,当条件满足的时候才会被执行 一共有 ...

  9. 1 认识开源性能测试工具jmeter

    典型的性能测试工具主要有2个,Load Runner和jmeter.Load Runner是商业化的,Jmeter是开源的.下面我们认识一下开源性能测试工具jmeter. 1.jmeter是什么? A ...

随机推荐

  1. Android内存溢出、内存泄漏常见案例及最佳实践总结

    内存溢出是Android开发中一个老大难的问题,相关的知识点比较繁杂,绝大部分的开发者都零零星星知道一些,但难以全面.本篇文档会尽量从广度和深度两个方面进行整理,帮助大家梳理这方面的知识点(基于Jav ...

  2. 大数据学习(12)—— Hive Server2服务

    什么是Hive Server2 上一篇我们启动了hive --service metastore服务,可以通过命令行来访问hive服务,但是它不支持多客户端同时访问,参见官网说明:HiveServer ...

  3. 为什么 WordPress 镜像用起来顺手?

    有用户朋友问,用已有WordPress镜像好?还是自己动手安装配置好? 答案:用Websoft9的相关镜像好(各大云市场的镜像提供商比较多,"真假李逵"的现象总是有的,我们只对We ...

  4. 我们是Android开发,我们都有着光明的未来

    作为一名程序员经常会逛v2ex论坛,前几天逛着玩的时候忽然发现一篇文章,标题非常吸引眼球名字叫中年危机的终极解法,作为一个步入而立之年的老人,心里非常激动,到底是啥解决法呢,于是迅速点进去查看. 进去 ...

  5. Kotlin强化实战!这份学习手册让你的面试稳如泰山

    一.引言 正如官网的slogan所描述:kotlin,是一门让程序员写代码时更有幸福的现代语言. 同时,也正如维基百科里介绍: JetBrains公司希望Kotlin能够推动IntelliJ IDEA ...

  6. 我写一篇文章就是要批评CSDN! 因为蓝湖3.0的更新

    对于开发者,经常会使用,学习到各种环境语言和工具 我们不只是在不断的在搬运知识,更多时候我们也是在 分享我们学到的"新知识", 当我们有幸觉得自己发现了新的知识与技术时,作为分享者 ...

  7. 【笔记】特征脸(PCA在人脸识别领域的应用)

    人脸识别与特征脸(简单介绍) 什么是特征脸 特征脸(Eigenface)是指用于机器视觉领域中的人脸识别问题的一组特征向量,该方法被认为是第一种有效的人脸识别方法. PCA的具体实现思想见 [笔记]主 ...

  8. iOS开发之Video转GIF

    前言 最近遇到需要将video转化为gif的问题,网上找的在线转换限制太多,索性就自己写了一个工具APP.文章末尾有开源代码和打包好的APP,如有需要请自行下载. 效果图 核心代码 来源 class ...

  9. 【网络编程】TCPIP_3_地址族与数据序列

    目录 前言 3. 地址族与数据序列 3.1 分配给套接字的 IP 地址与端口号 3.2 参数 IP 地址 3.2.1 IPV4 地址的结构体 3.2.2 地址族(Address Family) 3.2 ...

  10. 【XXE学习】XML外部实体注入

    一.XML外部实体注入介绍 1.1 XXE简介 XML外部实体注入(XML External Entity Injection)也就是人们(mian shi guan )常说的XXE啦,见名知意,就是 ...