转 5 jmeter性能测试小小的实战
5 jmeter性能测试小小的实战
项目描述
被测网址:www.sogou.com
指标:相应时间以及错误率
场景:线程数 20、Ramp-Up Period(in seconds) 10、循环次数 10
测试步骤
1.打开jmeter工具,右击“测试计划”-->“添加”-->“线程组”,创建一个线程组。
线程组设置(线程数 20、Ramp-Up Period(in seconds) 10、循环次数 10):
-线程数:虚拟用户数。
-ramp up period:设置的虚拟用户数需要多长时间全部启动。如果线程数为20,时间为10,也就是每秒钟启动2个线程。
-循环次数:每个线程发送请求的次数。如果线程数为20,循环次数为100,那么每个线程发送100次请求。总请求数为20*100=2000。如果勾选了“永远”,那么所有线程会一直发送请求,直到选择停止运行脚本。
-调度器:可以更灵活的设置运行时间等。

2.右击“线程组”-->“添加”-->“Sampler”-->“HTTP请求”。
http请求设置(填写域名,其他保持默认即可):
-名称:本属性用于标识一个取样器,建议使用一个有意义的名称。
-注释:对于测试没有任何作用,仅用户记录用户可读的注释信息。
-服务器名称或IP:HTTP请求发送的目标服务器名称或IP地址。
-端口号:目标服务器的端口号,默认值为80。后面的超时定义可以不用填写。
-协议:向目标服务器发送HTTP请求时的协议,可以是http或者是https,默认值为http。
-方法:发送HTTP请求的方法,可用方法包括GET、POST、HEAD、PUT、OPTIONS、TRACE、DELETE等。
-Content encoding:内容的编码方式。
-路径:目标URL路径(不包括服务器地址和端口)。
-自动重定向:如果选中该选项,当发送HTTP请求后的到的响应是302/301时,JMeter自动重定向到新的页面。
-User Keep Alive:当该选项被选中时,jmeter和目标服务器之间使用Keep-Alive方式进行HTTP通信,默认选中。
-User multipart/from-data for HTTP POST:当发送HTTP POST请求时,使用User multipart/from-data for HTTP POST方法发送,默认不选中。
-同请求一起发送参数:在请求中发送URL参数,对于带参数的URL,jmeter提供了一个简单的对参数化的方法,用户可以将URL中的所有参数设置在本表中,表中的每一行是一个参数值对(对应RUL中的 名称1=值1)。
-同请求一起发送文件:在请求中发送文件,通常HTTP文件上传行为可以通过这种方式模拟。
-从HTML文件获取所有有内涵的资源:当该选项被选中时,jmeter在发出HTTP请求并获得响应的HTML文件内容后,还对该HTML进行Parse并获取HTML中包含的所有资源,可以在下方的Embedded URLs must match文本框中填入需要下载的特定资源表达式。这样,只有能匹配指定正则表达式的URL指向资源会被下载。
-用作监视器:此取样器被当成监视器,在Monitor Results Listener中可以直接看到基于该取样器的图形化统计信息。默认不选中。
-Save response as MD5 hash?:选中该项,在执行时仅记录服务端响应数据的MD5值,而不记录完整的响应数据。在需要进行数据量非常大的测试时,建议选中该项以减少取样器记录响应数据的开销。

3.右击“线程组”-->“添加”-->“监听器”-->“查看结果树”。

4.右击“线程组”-->“添加”-->“监听器”-->“聚合报告”。
监听器-聚合报告:
-Label:定义HTTP请求的名称。
-Samples:表示这次测试一共发出了多少请求。
-Average:平均响应时长。默认情况下是单个Request的平均响应时长,当使用了Transaction Controller时,也可以以Transaction为单位显示平均时长。
-Median:中位数,也就是50%用户的响应时长。
-90% Line:90%用户的响应时长。
-Min:访问页面的最小响应时长。
-Max:访问页面的最大响应时长。
-Error%:错误请求的数量/请求的总数。
-Throughput:默认情况下表示每秒完成的请求数(Request per Second),当使用了Transaction Controller时,也可以表示类似LoadRunner的Transaction per Second数。
-KB/Sec:每秒从服务器端接收到的数据量。
-注意:单位是毫秒,保存文件的后缀应是.jtl,点击configure可以对聚合报告显示内容进行配置,一般情况下不要更改,保持默认即可。

5.运行脚本
jmeter有一个坏处就是再次执行结果累加,所以当我们要再次运行脚本时,最好先点击“清除全部”清除上一次结果。
当启动按钮再次点亮时,表示脚本执行完毕。
6.查看报告
转 5 jmeter性能测试小小的实战的更多相关文章
- 5 jmeter性能测试小小的实战
项目描述 被测网址:www.sogou.com指标:相应时间以及错误率场景:线程数 20.Ramp-Up Period(in seconds) 10.循环次数 10 测试步骤 1.打开jmeter工具 ...
- jmeter性能测试小小的实战
项目描述: 被测网站:xqtesting.blog.51cto.com 指标:响应时间以及错误率 场景: 新建 一个线程组,设置线程属性: 线程数为10 Ramp-Up-Penod(in second ...
- JMeter 性能测试进阶实战
课程简介 本课程制作的主要目的是为了让大家快速上手 JMeter,期间穿插了大量主流项目中用到的技术,以及结合当今主流微服务技术提供了测试 Dubbo 接口.Java 工程技术具体实施方案,注重实践. ...
- 11月1号开学! 《jmeter性能测试实战》崭新亮相!
课程介绍 第10期<jmeter性能测试实战>课程,11月2号开学!全新改版,和之前的课程框架完全不同 主讲老师:飞天小子 上课方式:每周六周日晚8点到10点,QQ群视频在线直播教学 本期 ...
- 转 14 jmeter性能测试实战--数据库MySQL
14 jmeter性能测试实战--数据库MySQL 需求 测试用户表(对用户表select操作) 测试步骤 1.MySQL驱动下载并安装. 2.测试计划面板点击"浏览"按钮,将 ...
- 转 12 jmeter性能测试实战--web程序
12 jmeter性能测试实战--web程序 项目背景 项目:XX网站环境:Windows需求:并发登录的性能测试场景:1s增加2个线程,运行2000次(线程数20,Ramp-Up seconds ...
- 一篇文章入门Jmeter性能测试【经典长文】
孟船长 目录 1.性能测试定义2.为什么要做性能测试3.性能测试指标.性能测试分类4.Jmeter性能测试实战[入门级]5.参考文章链接 1.性能测试定义 百度&知乎 性能测试是通过自动化的 ...
- Jmeter分布式测试实战
一.Jmeter分布式测试基础 1.Jmeter分布式测试原因: 在使用Jmeter进行接口的性能测试时,由于Jmeter 是JAVA应用,对负载机的CPU和内存消耗比较大.所以当需要模拟数以万计的并 ...
- 第9期《jmeter接口自动化实战》零基础入门!
2019年 第9期<jmeter接口自动化实战>课程,12月6号开学! 上课方式:QQ群视频在线教学 本期上课时间:12月6号-1月18号,每周五.周六晚上20:00-22:00 报名费: ...
随机推荐
- 第六章 Sleuth--链路追踪
修整了2天,我们继续接着上篇 第五章 Gateway–服务网关 继续来讲SpringCloud Alibaba全家桶中的 Sleuth 链路追踪 组件 喜欢记得点关注哦 6.1 链路追踪介绍 在大型系 ...
- Python3和高性能全文检索引擎Redisearch进行交互
安装 pip install redisearch 使用 from redisearch import Client, TextField # 创建一个客户端与给定索引名称 client = Clie ...
- linux目录和Windows目录对比
linux目录和Windows目录对比 我们应该知道 Windows 有一个默认的安装目录专门用来安装软件.Linux 的软件安装目录也应该是有讲究的,遵循这一点,对后期的管理和维护也是有帮助的. / ...
- ADF 第八篇:传递参数(Pipeline的Parameter和Variable,Activity的output)和应用表达式
Azure Data Factory传递参数的方式主要有两种,通过Pipeline的Parameter和Variable来传递参数,通过Activity的输出来传递参数.要在Activity中引用Pa ...
- 一.C语言概述
C语言的起源 贝尔实验室的Dennis Ritchie在1972年开发了C,当时他正与ken Thompson一起设计UNIX操作系统,然而,C并不是完全由Ritchie构想出来的.它来自Thomps ...
- Git提交错了不用慌,这三招帮你修改记录
大家好,今天我们来聊聊git当中一个很重要的功能--历史记录的修改. 有的时候我们会突然发现某个地方需要修改,最常见的某个不应该被提交的文件被提交了进来.我们希望它不只是在后序的版本当中不再出现,而是 ...
- JPA 复杂查询 - Querydsl
添加依赖 <!--query dsl --> <dependency> <groupId>com.querydsl</groupId> <art ...
- 「每日一题」有人上次在dy面试,面试官问我:vue数据绑定的实现原理。你说我该如何回答?
关注「松宝写代码」,精选好文,每日一题 时间永远是自己的 每分每秒也都是为自己的将来铺垫和增值 作者:saucxs | songEagle 来源:原创 一.前言 文章首发在「松宝写代码」 2020. ...
- js 中的 DOM 和 BOM
BOM浏览器对象模型 概念:Browser Object Model 组成: Window:浏览器窗口对象 Navigator:浏览器对象 screen:显示器屏幕对象 His ...
- 编写 Dockerfile 生成自定义镜像
一般情况下我们可以从公共渠道诸如 DockerHub 获取镜像上获取镜像,但是在实际生产过程中,往往需要定制化的镜像,例如修改一些配置文件,增加一些特殊的命令或软件等需求,这时就需要通过编写 Dock ...