1,测试需求:测试20个用户访问http://www.51zxw.net在负载达到30QPS时的平均响应时间

QPS:Query Per Second每秒查询率,是一台查询服务器每秒能够处理的查询次数,在因特网,作用域名系统服务器的性能经常用每秒查询率来衡量。

2.测试步骤:
第一步:添加线程组主要包含三个参数:线程组,准备时长(ramp-up period(inseconds))、循环次数

线程组:虚拟用户数,一个虚拟用户占用一个进程或线程,设置多少虚拟用户数在这里有就是设置多少个线程数
准备时长(单位为s):设置的虚拟用户数需要多长时间全部启动,如果线程数为20,准备时长为10 ,那么需要10秒启动20个线程,也就是每秒启动2个线程

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

第二部:增添http请求

 
一个http请求有着许多的配置参数,下面将详细介绍:
名称:本属性用于标识一个取样器,建议使用一个有意义的名称
注释:对于测试没有任何作用,仅用户记录用户可读的注释信息
服务器名称或ip:http请求发送的目标服务器名称或IP地址
端口号:目标服务器的端口号,默认值为80
timeouts(milliseconds):设置请求和响应的超时时间
协议:向目标服务器发送http请求时的协议,可以是http或者是https,默认值为http
方法:发送http请求方法,可用方法包括GET'、POST、HEAD、PUT、OPTIONS、TRACE、DELETE等
Content encoding:内容的编码方式,默认值为iso8859
路径:目标URL路径(不包括服务器地址和端口)
自动重定向:如果选中该选项,当发送http请求后得到的响应为301/302时,jmeter自动重定向到新的页面
Use keep alive:当该选项被选中时,jmeter和目标服务器之间使用keep-alive方式(又称持久连接、连接重用)进行http通信,默认选中
use multipart/from-date for http post:当发送http post请求时,使用use multipart/from-date方法发送,默认不选中
同请求一起发送参数:在请求中发送URL参数,对于带参数的URL,jmeter提供了一个简单的对参数化的方法,用户可以将URL中所有参数设置在本表中,表中的每一行是一个参数值对(对应RUL中的名称1=值1)
同请求一起发送文件:在请求中发送文件,通常http文件上传行为可以通过这种方式模拟
从html文件获取所有有内含的资源:当该选项被选中时,jmeter在发出http请求并获的响应的html文件内容后,还对改html进行分析并获取html中包含的所有资源(图片、flash等)默认不选中,如果用户只希望获取页面中特定的资源,可以在下方的Embedded URLs must match文本框中填入需要下载的特定资源表达式,这样,只有能匹配指定正则表达式的URL指向资源会被下载
用作监视器:此取样器被当成监视器,在monitor results listener中可以直接看到基于该取样器的图形化统计信息,默认不选中
save response as md5 hash?:选中该项,在执行时仅记录服务端响应数据的MD5值,而不记录完整的响应数据,在需要进行数据非常大的测试时,建议选中该项以减少取样器记录响应数据的开销

tips默认时间单位是毫秒,报告输出文件文件后缀.jtl

第三步:设置QPS限制
jmeter提供一个非常有用的定时器,称为Constant throughput timer(常数吞吐量定时器),该定时器可以方便控制给定的取样器发送请求的吞吐量

Constant throughput timer的主要属性介绍:

target throughput(in sampler per minute):目标吞吐量,注意这里是每分钟发送请求数,实际填的数值为:60×QPS 其次calculate throughput based on:有5个选项,分别是:
1800=60×QPS=60×30

this thread only:控制每个线程的吞吐量,选择这种模式时,总的吞吐量为设置的target throughput乘以该线程的数量
All active threads:设置的target throughput将分配在每个活跃线程上,每个活跃线程在上一次运行结果后等待合理时间后再次运行,活跃线程指同一时刻同时运行的线程
All active threads(shared):与all active threads的选项基本相同,唯一的区别是,每个活跃线程都会在所有活跃线程上一次运行结束后等待合理的时间后再次运行
All active threads in current thread group:设置
的target throughput将分配在当前线程组的每一个活跃线程上,当测试计划中只有一个线程组时,该选项和all active threads选项的效果完全相同
All active threads in current thread group(shared):与All active threads in current thread group基本相同,唯一的区别是,每个活跃线程都会在所有活跃线程的上一次运行结束后,等待合理的时间后再次运行

转载于:https://www.cnblogs.com/wyf99/p/7245221.html

九.jmeter性能测试基础实践(1)相关推荐

  1. 20154319 实验九web安全基础实践

    一.实验内容 (1)webgoat开启: (2)SQL.XSS.CSRF练习. 二.实验后问题回答 (1)SQL注入攻击原理,如何防御 答:原理:SQL注入攻击是指攻击者利用Web应用程序无法对用户输 ...

  2. 性能测试 性能测试实战(八)Jmeter性能测试平台开发,性能测试平台架构解析 ,性能测试平台搭建 分布式性能压测平台 Jmeter分布式性能测试管理平台 性能测试平台示例案例 《完结篇》

    文章目录 一.前言 二.Jmeter分布式性能测试平台 介绍 1.Jmter分布式性能测试平台 简介 2.Jmeter分布式性能测试平台 优秀案例1 3.Jmeter分布式性能测试平台 优秀案例2 4 ...

  3. JMeter性能测试的基础知识和个人理解

    JMeter性能测试的基础知识和个人理解 1. JMeter的简介   JMeter是Apache组织开发的开源项目,设计之初是用于做性能测试的,同时它在实现对各种接口的调用方面做的比较成熟,因此,常 ...

  4. Jmeter 性能测试的基础了解

    最近项目上在对网站和wap做性能优化(目标是支持200个并发,在登录和课程详情页的相关操作),借此机会学习性能测试 1.了解性能测试的基础知识 2.性能测试的流程: 3.怎么样录制脚本: 4.怎样配置 ...

  5. jmeter性能测试步骤入门

    目录 一.Jmeter简介 二.Jmeter实现性能测试 三.总结 一.Jmeter简介 1 概述         jmeter是一个软件,使负载测试或业绩为导向的业务(功能)测试不同的协议或技术. ...

  6. Jmeter性能测试【应用场景、性能测试流程、搭建测试环境】

    目录 一.性能测试的概念 二.性能测试类型 三.性能测试应用场景(领域) 四.性能测试常用的指标 五.性能测试流程 六.搭建测试环境 七.测试用例设计和脚本开发 八.测试数据准备 九.性能测试执行和管 ...

  7. 阿里云 VPC 内网性能测试最佳实践

    作者:风起 背景 随着互联网的快速发展,互联网衍生出来的多种工具.服务早已融入我们工作.生活的每个角落,因此互联网服务的稳定性也愈加重要,如网络挂号问诊.网上政务办理.网络消费娱乐等更是与大家的生活息 ...

  8. jmeter性能测试常用插件简介

    jmeter性能测试常用插件简介 jmeter作为一个开源的接口性能测试工具,相对于商业性软件loadrunner来说,优点是更加灵活方便,操作简单.但相对来说,专业性和对性能参数的分析相对比较薄弱. ...

  9. 超详细!Jmeter性能测试(一)

    *Jmeter 性能测试(一) 首先开发会给你一个接口文档.我们这边是做支付方面的,所以我们要求给下单支付接口做下压测. 由于我们这边接口都是有加密参数的,所以都是直接在JAVA工程包里直接跑的,因为 ...

最新文章

  1. 一道并查集的(坑)题:关闭农场closing the farm
  2. windows环境下的zookeeper安装
  3. 史上最全 Python Re 模块讲解(一)
  4. 助力小白常见JS逆向乱杀喂饭教程——Url加密
  5. android studio no marked region found along edge Found along top edge
  6. 如何写dblink?
  7. python selenium 处理弹窗_python-selenium -- 弹出框处理
  8. 【Kubernetes】浅析基本概念和原理
  9. html基本结构(头部需加上样式表),HTML基本结构、头部、注释(示例代码)
  10. Vue实战(六)通用Table组件
  11. python 模拟键盘_Python模拟键盘输入和鼠标操作
  12. 安装Electron
  13. 简单说 !![]==true 与 []==true 引发的思考
  14. vue全局组件中再创建多个组件
  15. 开发工具-Hijson
  16. linux 卸载pip3,【python】centos7安装卸载python3,pip3
  17. 【前端面试之缓存】js本地缓存、浏览器缓存、服务器缓存
  18. IOS开发之相机、相册页面英文问题
  19. unity中单位是米还是厘米_Unity3D 单位
  20. Java基础知识——BIO模式

热门文章

  1. UVM中factory机制的使用
  2. table 的 id 属性不被 document.getElementById支持
  3. 一个新基民的感叹:人心不足蛇吞象
  4. python测控_基于RN8302和Python的电能测控系统设计
  5. pc工具不支持stb的加密方式_那些工作中常用的实用工具
  6. 间接寻址级别不同_金属激光切割机的不同配置是什么
  7. 灰度董事总经理:BTC突破2万美元并不令人惊讶
  8. SAP 产品部署方式及定价模型
  9. SAP License:SAP系统合规性审计介绍
  10. 软件工程学习进度第三周暨暑期学习进度之第三周汇总