项目描述

被测网址: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性能测试小小的实战的更多相关文章

  1. 转 5 jmeter性能测试小小的实战

    5 jmeter性能测试小小的实战   项目描述 被测网址:www.sogou.com指标:相应时间以及错误率场景:线程数 20.Ramp-Up Period(in seconds) 10.循环次数 ...

  2. jmeter性能测试小小的实战

    项目描述: 被测网站:xqtesting.blog.51cto.com 指标:响应时间以及错误率 场景: 新建 一个线程组,设置线程属性: 线程数为10 Ramp-Up-Penod(in second ...

  3. JMeter 性能测试进阶实战

    课程简介 本课程制作的主要目的是为了让大家快速上手 JMeter,期间穿插了大量主流项目中用到的技术,以及结合当今主流微服务技术提供了测试 Dubbo 接口.Java 工程技术具体实施方案,注重实践. ...

  4. 11月1号开学! 《jmeter性能测试实战》崭新亮相!

    课程介绍 第10期<jmeter性能测试实战>课程,11月2号开学!全新改版,和之前的课程框架完全不同 主讲老师:飞天小子 上课方式:每周六周日晚8点到10点,QQ群视频在线直播教学 本期 ...

  5. 转 14 jmeter性能测试实战--数据库MySQL

    14 jmeter性能测试实战--数据库MySQL   需求 测试用户表(对用户表select操作) 测试步骤 1.MySQL驱动下载并安装. 2.测试计划面板点击"浏览"按钮,将 ...

  6. 转 12 jmeter性能测试实战--web程序

    12 jmeter性能测试实战--web程序   项目背景 项目:XX网站环境:Windows需求:并发登录的性能测试场景:1s增加2个线程,运行2000次(线程数20,Ramp-Up seconds ...

  7. 一篇文章入门Jmeter性能测试【经典长文】

    孟船长  目录 1.性能测试定义2.为什么要做性能测试3.性能测试指标.性能测试分类4.Jmeter性能测试实战[入门级]5.参考文章链接 1.性能测试定义 百度&知乎 性能测试是通过自动化的 ...

  8. Jmeter分布式测试实战

    一.Jmeter分布式测试基础 1.Jmeter分布式测试原因: 在使用Jmeter进行接口的性能测试时,由于Jmeter 是JAVA应用,对负载机的CPU和内存消耗比较大.所以当需要模拟数以万计的并 ...

  9. 第9期《jmeter接口自动化实战》零基础入门!

    2019年 第9期<jmeter接口自动化实战>课程,12月6号开学! 上课方式:QQ群视频在线教学 本期上课时间:12月6号-1月18号,每周五.周六晚上20:00-22:00 报名费: ...

随机推荐

  1. 微信小程序中使用Async-await方法异步请求变为同步请求

    微信小程序中有些 Api 是异步的,无法直接进行同步处理.例如:wx.request.wx.showToast.wx.showLoading等.如果需要同步处理,可以使用如下方法: 注意: Async ...

  2. 网络编程 -- RPC实现原理 -- Netty -- 迭代版本V4 -- 粘包拆包

    网络编程 -- RPC实现原理 -- 目录 啦啦啦 V2——Netty -- new LengthFieldPrepender(2) : 设置数据包 2 字节的特征码 new LengthFieldB ...

  3. VMware Workstation11安装Mac OS X 10.10虚拟机

    原文:http://jingyan.baidu.com/article/3f16e003eac66e2591c103e0.html 优化:http://www.cnblogs.com/yipu/p/4 ...

  4. Robot Framework封装的关键字输入参数可以传入多个值的方法

    输入参数的最后一个参数可以是一个列表变量,通过@{列表名称}或者${列表名称}的方式实现传入多个值的场景: 或者

  5. cocos2d-x游戏引擎核心(3.x)----事件分发机制之事件从(android,ios,desktop)系统传到cocos2dx的过程浅析

    (一) Android平台下: cocos2dx 版本3.2,先导入一个android工程,然后看下AndroidManifest.xml <application android:label= ...

  6. Get Started with the Google Fonts API

    Get Started with the Google Fonts API This guide explains how to use the Google Fonts API to add fon ...

  7. VS 2013 未找到与约束contractname Microsoft.VisualStudio.Utilities.IContentTypeRegistryService......匹配的导出

    错误信息: 点击解决方案中的文件,就会提示这个错误.最近给vs2013安装了python的插件,安装了vs2017的python,可能是这两个导致了这个错误. 解决方案: 删除 C:\Users\ji ...

  8. js dom 观察者属性 MutationObserver

    MDN上说的很清楚 MutationObserver给开发者们提供了一种能在某个范围内的DOM树发生变化时作出适当反应的能力.该API设计用来替换掉在DOM3事件规范中引入的Mutation事件 co ...

  9. 一次项目实践中DBCP数据库连接池性能优化

    关于数据库连接池DBCP的关注源于刚刚结束的一轮测试,测试内容是衡量某Webserver服务创建用户接口的性能.这是一款典型的tomcat应用,使用的测试工具是Grinder.DBCP作为tomcat ...

  10. 写写我的硕士三年【zz】

    昨天我们组的10bit-40M ADC测出来了,自己终于能松口气,可以无牵无挂的毕业了.晚上老板bg全组毕业生,喝了很多,我对老板说:"这3年在组里,我是把它当作事业来做的!"是的 ...