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

  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. mysql 版本在springboot 中定义位置

  2. CSS 格式 设置标签间距 和 input slot

    作者:张艳涛 日期:2020-07-29 CSS设置俩个标签的间距 及 Input Slots <div> <div class="m-b-20 ovf-hd"& ...

  3. centos ansible常用命令

    ansible在日常运维中经常使用,特别是批量执行多台服务器的时候,有效减小重复的操作成本,以下从安装到使用仅讲解工作中常用的几种方式,模块很多功能很强大,但不做全面讨论. ansible安装 在ce ...

  4. 【问题记录】- 谷歌浏览器 Html生成PDF

    起因: 由于项目需要实现将网页静默打印效果,那么直接使用浏览器打印功能无法达到静默打印效果. 浏览器打印都会弹出预览界面(如下图),无法达到静默打印. 解决方案: 谷歌浏览器提供了将html直接打印成 ...

  5. jadx的使用

    使用jadx之前必须安装配置java环境才能正常打开运行 https://www.cnblogs.com/yhoil/p/14808648.html 一.前言 今天介绍一个非常好用的反编译的工具 ja ...

  6. css文件编码

    当css文件的编码

  7. 37岁Android程序员被裁员,面试大厂被拒,降薪去小公司,心更凉了

    在职场论坛看到这样一个帖子,程序员小A被前公司裁员了,裁员之后也并没有特别气馁,打算重头再来,结果却被现实打击到了. 他大学毕业的时候进入到一家知名互联网公司上班,工作期间,也是不断学习,提升自己的能 ...

  8. POI解析excel,将批量数据写入文件或数据库

    .personSunflowerP { background: rgba(51, 153, 0, 0.66); border-bottom: 1px solid rgba(0, 102, 0, 1); ...

  9. rancher清理主机脚本

    #!/bin/bash #From:rancher #date:2019-10-18 #admin:jarno # 停止服务 systemctl disable kubelet.service sys ...

  10. SpringMVC学习07(Ajax)

    7.Ajax研究 7.1 简介 AJAX = Asynchronous JavaScript and XML(异步的 JavaScript 和 XML). AJAX 是一种在无需重新加载整个网页的情况 ...