网页细分图结果分析(Web Page Diagnostics)
Discuz开源论坛网页细分图结果分析(Web Page Diagnostics)
续LR实战之Discuz开源论坛项目,之前一直是创建虚拟用户脚本(Virtual User Generator)和场景(Controller),现在,终于到了LoadRunner性能测试结果分析(Analysis)这部分了。
LoadRunner结果分析图表功能中最重要图表分析之一,就是网页诊断细分图,在Controller场景设计运行之前,需要在菜单栏中设置启用网页诊断功能(诊断-网页诊断-启动),如图:

网页细分图,是显示每个页面及其组件的相关下载时间和大小,主要用来评估页面内容是否影响事务响应时间(只与事务响应时间有关)。通过与不同的事务图关联,可以分析网站下载慢或中断连接等问题的原因,从而确定系统性能问题是出现在网络还是服务器,再进一步而分析是哪个网页、什么因素导致的?
下面分别说下网页细分图各图表的功能:
网页细分图,总共有8个图表,分别为页面分解图总(web page Diagnostics)、页面组件细分图(page comporment breakdown)、页面组件细分图(随时间变化)(page comportment breakdown over time)、页面下载时间细分图(page download time breakdown)、页面下载时间细分图(随时间变化)(page download time breakdown over time)、第一次缓冲时间细分图(time to first buffer breakdown)、第一次缓冲时间细分图(随时间变化)(time to first buffer breaddown over time)、已下载组件大小图(Downloaded Component Size)[KB]。
1、 页面组件细分图:显示每个网页及其组件的平均下载时间(以秒为单位),查看所选择页面中哪个元素所占的平均下载时间最长。
2、 页面组件细分图(随时间变化):此图适合在客户端下载组件较多时的页面分析,通过分析下载时间发现哪些组件不稳定或比较耗时,它是随整个场景运行的时间来变化的。
3、 页面下载时间细分图:页面下载时间细分图根据DNS解析时间、连接时间、第一次缓冲时间、SSL握手时间、接收时间、FTP验证时间、客户端时间和错误时间对每个组件进行分析的。它可以确认在网页下载时期,响应时间缓慢是由网络错误引起,还是由服务器错误引起。
4、 页面下载时间细分图(随时间变化):显示选定网页下载时间细分,从中能看到页面各个元素在压力测试过程中的下载情况。如果某个页面打开速度慢,通过对此图分析,可以清楚地看到打开该页面的时间主要在什么地方,针对此问题进行优化。
5、 第一次缓冲时间细分图:指成功收到从web服务器返回的第一次缓冲之前的这一段时间内,每个页面组件的相关服务器和网络时间(以秒为单位),此图对分析页面的时间很重要,其中,网络时间为从发送第一个HTTP请求那一刻直到收到确认为止所经过的平均时间。服务器时间是指从收到初始HTTP请求确认直到成功收到来自web服务器的第一次缓冲为止所经过的平均时间。
6、 第一次缓冲时间细分图(随时间变化):第一次缓冲时间是在客户端与服务器建立连接后,从服务器发送第一个数据包开始计时,数据经过网络传送到客户端后,再到浏览器收到第一个缓冲数据所用的时间。(图中,用两种颜色来区分服务器和网络各自所用的时间,以确认是服务器问题还是网络问题,此图非常有用!)
由理解了以上这些图,就可以根据自己的思路来进一步分析网页中占用的较长的时间,问题出现在哪里了
下面分享一下我利用这些网页细分图来分析测试结果吧:
可以你会觉得,LoadRunner的图表分析这么多,分析的思路、步骤从哪里开始啊?别急!
我个人的习惯,整个LR结果分析的步骤:
结果摘要--》并发数分析--》响应时间--》每秒点击数--》业务成功率--》系统资源--》网页细分图--》web服务器资源--》数据库服务器
这里只对页面细分图进一步分析的思路进行梳理,有些图只是拿来参考,并不需要进一步分析的。
1、 首先打开页面分解总图(Web Page Diagnostics),在左边Breakdown Tree下,列出了脚本中添加的所有事务名称,通常来说,我们主要关注需要并发的系统业务部分,来看login部分,下载时间(Download Time)中,主要由两个页面导致,其中Receive部分占用的时间最长。(Component部分不在这里看,因为在这里看不够直观)

2、接着打开页面组件细分图(Page Component Breakdown),找出所选择页面中哪个元素所占的平均下载时间较多,其实就上面的两个,只不过这里是用饼图来展示比较直观。

3、 然后打开页面下载时间细分图(page Download Time Breakdown),根据DNS解析时间、连接时间、第一次缓冲时间、SSL握手时间、接收时间、FTP验证时间、客户端时间和错误时间的组成在所选择的页面上的分布情况,确定这个页面下载时间较长的响应时间是由网络错误引起,还是服务器错误引起的,如图1,Receive Time时间最长,初始判断是网络问题引起的,但也有可能是浏览器请求的问题,再看页面下载细分随时间分布图2,在整个login场景中该页面元素一直在下载?这极有可能是网络问题了。另外一点,若页面缓存做得好,是不会一直下载的吧。
图1

图2

4、 最后打开一个非常重要的图,即第一次缓冲时间细分图(Time to First Buffer Breakdown),第一次缓冲时间细分图进行对比结果是否一致,因为第一次缓冲时间细分图也是可以确定该页面的响应时间是由网络错误引起,还是服务器错误引起。由此图,可以看到,大部分的时间在Network Time。

网页细分图结果分析(Web Page Diagnostics)的更多相关文章
- LR实战之Discuz开源论坛——网页细分图结果分析(Web Page Diagnostics)
续LR实战之Discuz开源论坛项目,之前一直是创建虚拟用户脚本(Virtual User Generator)和场景(Controller),现在,终于到了LoadRunner性能测试结果分析(An ...
- 解读Web Page Diagnostics网页细分图
解读Web Page Diagnostics网页细分图 http://blog.sina.com.cn/s/blog_62b8fc330100red5.html Web Page Diagnostic ...
- 解读Loadrunner网页细分图(Web Page Diagnostics)
[转载的地址]https://www.cnblogs.com/littlecat15/p/9456376.html 一.启用网页细分图 首先在Controller场景设计运行之前,需要在菜单栏中设置D ...
- LR网页细分图中的时间详解
Web Page Diagnostics: 1)DNS Resolution:浏览器访问一个网站的时候,一般用的是域名,需要dns服务器把这个域名解析为IP,这个过程就是域名解析时间,如果我们在局域网 ...
- Loadrunner Analysis之Web Page Diagnostics
Loadrunner Analysis之Web Page Diagnostics 分类: LoadRunner 性能测试 2012-12-31 18:47 1932人阅读 评论(2) 收藏 举报 di ...
- web page diagnostics
1.概念说明: DNS解析时间:显示使用最近的DNS服务器将DNS名称解析为IP地址所需的时间:DNS查找度量是指示DNS解析问题或DNS服务器问题的一个很好的指示器: Connect时间:显示与 ...
- 在ASP.NET MVC里对Web Page网页进行权限控制
我们在ASP.NET MVC开发时,有时候还是得设计ASP.NET的Web Page网页(.aspx和.aspx.cs),来实现一些ASP.NET MVC无法实现的功能,如此篇<Visual S ...
- Loadrunner 网页诊断图
Loadrunner 11汉化后版本不包括网页诊断图,所以要想使用网页诊断图,不要汉化.12.50版本汉化后不受影响. 场景执行完,进行analysis时,才能打开网页诊断图. 网页诊断图中组件下载时 ...
- Python -- 网络编程 -- 抓取网页图片 -- 图虫网
字符串(str)编码成字节码(bytes),字节码解码为字符串 获取当前环境编码:sys.stdin.encoding url编码urllib.parse.quote() url解码urllib.pa ...
随机推荐
- java入门 第一季3
运算符:算术运算符,赋值运算符,比较运算符,逻辑运算符,条件运算符 1. 算术运算符: 自增和自减只能用于操作变量,不能直接用于操作数值和常量 % 求余数 2. 赋值运算符 = 赋值运算符为变量或常 ...
- eclipse远程调试Tomcat方法[转]
转载自:http://blog.csdn.net/afgasdg/article/details/9236877 1.Linux中配置tomcat在catalina.sh中添加如下CATALINA_O ...
- vector在C++中的基本用法
在写BlackJackGame的时候,考虑到要用到容器,所以就对容器的相关知识强化了一下: 因为我想的是有card类,最后要实现发牌,洗牌等等一系列的操作的时候,使用指向card类的对象的指针,将ca ...
- 【leetcode】Subsets (Medium) ☆
Given a set of distinct integers, S, return all possible subsets. Note: Elements in a subset must be ...
- 异常处理__try{}__except(EXCEPTION_EXECUTE_HANDLER){}
在一个函数中不能混合使用 try{}catch(CException *e){} 与 __try{}__except(EXCEPTION_EXECUTE_HANDLER){} 编译时报错 error ...
- 让U盘永不中毒的解决办法
一.背景: 在学校上课的时候,有个老师很潇洒的拿着一个U盘就来教室上课了.然后快上课的时候在电脑上准备播放课件.注意,这一瞬间其妙的事情发生了,课件因为他的U盘中病毒了,打不开了,老师当时笑了.后来又 ...
- 定时器(NSTimer)
iOS中定时器NSTimer的使用 1.初始化 + (NSTimer *)timerWithTimeInterval:(NSTimeInterval)ti target:(id)aTarget sel ...
- c++中有些重载运算符为什么要返回引用
事实上,我们的重载运算符返回void.返回对象本身.返回对象引用都是可以的,并不是说一定要返回一个引用,只不过在不同的情况下需要不同的返回值. 那么什么情况下要返回对象的引用呢? 原因有两个: 允许进 ...
- php数组的创建及操作
//数组的创建 //1 $usernames = array('李彦宏','周宏伟','马云','俞敏洪','李开复'); echo $usernames; //array,打印类型 echo '&l ...
- .net学习笔记----有序集合SortedList、SortedList<TKey,TValue>、SortedDictionary<TKey,TValue>
无论是常用的List<T>.Hashtable还是ListDictionary<TKey,TValue>,在保存值的时候都是无序的,而今天要介绍的集合类SortedList和S ...