转 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 报名费: ...
随机推荐
- 一劳永逸,解决基于 keep-alive 的后台多级路由缓存问题
用过 vue-element-admin 的同学一定很清楚,路由的配置直接关系侧边栏导航菜单的展示,也得益于这种设计思路,几乎大部分后台框架都采用这个方案,当然也包括了我写的 Fantastic-ad ...
- C#WebApi 接口增加备注和测试 默认api文档
1:配置 接口注释. (1)配置生成xml的路径.我们在项目上面点右键→属性→生成标签页配置xml的路径. (2)在xml的读取路径:在Areas\HelpPage\App_Start\HelpPag ...
- RxHttp 完美适配Android 10/11 上传/下载/进度监听
1.前言 随着Android 11的正式发布,适配Android 10/11 分区存储就更加的迫切了,因为Android 11开始,将强制开启分区存储,我们就无法再以绝对路径的方式去读写非沙盒目录下的 ...
- Linux嵌入式学习-Mplayer交叉编译-undefined reference to `clock_gettime' MPlayer
編譯Mplayera. 配置.configure# ./configure --host-cc=gcc --cc=arm-linux-gcc --target=arm --enable-static ...
- jsonp详解及跨域请求
什么是JSONP? JSON是一种轻量级的数据传输格式语言,被广泛应用于当前Web应用中.JSON格式数据的编码和解析基本在所有主流语言中都被实现,所以现在大部分前后端分离的架构都以JSON格式进行数 ...
- Unity Package Manager
(注:Unity 2018.1及以后的版本才可以使用Package Manager.) 一个package是一个容器,里面放的是Assets, Shaders, Textures, plug-ins, ...
- webapplicationContext之ServletContext等相关概念说明
1)ServletContext是一个全局的储存信息的空间,所有用户共用一个,其信息必须是线程安全且共享的. ServletContext有一个接口定义:ServletContext接口.此接口定义了 ...
- 使用 SOS 对 Linux 中运行的 .NET Core 进行问题诊断
目录 说明 准备一个方便的学习环境 2.x 配置内容 3.x 配置内容 工具介绍 lldb sos plugin 1. attach 到进程上进行调试 2. 分析core dump文件 SOS 案例分 ...
- Vue利用v-for渲染时表单信息出不来
今天在写项目时,Controller的值已经传入到html,但是利用vue进行渲染的时候就是出不来, 原因如下: 注意,in 之前的空格.
- springcloud学习(一)之Eureka
前言 微服务原则上是应该有多个服务提供者的实例的,在通常情况下服务提供者的数量和分布往往是动态变化的,这样在传统的单体应用中的那种硬编码服务url进行远程调用的方式就不足取.服务注册中心就是为了解决服 ...