码迷,mamicode.com
首页 > Web开发 > 详细

网页前端页面加载性能测试各工具可行性方案分析

时间:2015-10-26 11:59:35      阅读:210      评论:0      收藏:0      [点我收藏+]

标签:

网页前端页面加载性能测试各工具可行性方案分析

征对各个浏览器和工具做了测试,之所以选择的是百度首页测试,因为其比较单一,没有多层嵌套和持续加载,尽量减少其他影响,测试中发现目前有些方案是不可行的,后面征对各个测试结果给出了可行方案和不可行的建议。

1 .webbrowser(内核IE10)和IE10浏览器的比较:

Webbrowser的测试方法为,先执行清除浏览器缓存,从开始导航开始计时,DocumentCompleted时间将2次触发,取最后一次的时间,按照DocumentCompleted解释,这个时间相当于全部元素loa完毕,测试结果如下:

技术分享

接下来打开IE工具测试,先执行清除浏览器缓存测试结果如下

技术分享

结论:经过多次测试,可以看到,Webbrowser和IE工具测试的结果相当接近!

Webbrowser 的DocumentCompleted时间即为IE工具的全部元素加载时间

2 HTTP抓包工具Fiddler结果测试:

技术分享

结束时间

技术分享

抓包IE10结果如下:

开始14:15:59:6241

结束14:16:00:1082 两者间隔为481毫秒。

抓包Webbrowser结果如下:

开始14:18:37:4179

结束14:18:37:8689

两者间隔451毫秒

结论:1.IE10和Webbrowser网络加载时间基本相同,

2 问题:Fiddler抓包的数据大于浏览器的计算时间?这个是不是Fiddler数据有问题?

2.火狐的firebug工具测试:

先清除浏览器缓存:

技术分享

然后再打开百度

技术分享

结论:怎么测试都在2000毫秒以上,搞不懂为什么比IE慢那么多?直眼睛都看得出来比IE慢!

3. berserkjs测试

这个不知道缓存是怎么搞,直接测试吧技术分享

可以看到这个间隔时间为246秒,首屏时间为:1894毫秒

这个时间跟ie内核的差不多

Fiddler测试抓包:

14:34:09:7921

14:34:10:2181

426

可以发现Fiddler抓包时间大于berserkjs的测试时间!

.

然后我又使用IE10做了个测试,关闭Fiddler用webbrowser测试时间为186毫秒

打开Fiddler用webbrowser测试时间居然高达460毫秒!

4测试结论:

1. 浏览器对测试数据影响很大,3种种内核,最快的为webkit 246,也有可能这个东西没有外围的程序直接使用内核的关系,他是最快的,IE10次之为400,火狐最慢达到2000多,但是为什么火狐的速度那么慢,这个未能有答案。

2. 查找各种资料,发现类似Fiddler这种工具使用的原理是,启动了Fiddler,程序将会把自己作为一个微软互联网服务的系统代理。作为系统代理,所有的来自微软互联网服务(WinInet)的http请求再到达目标Web服务器的之前都会经过Fiddle,同样的,所有的Http响应都会在返回客户端之前流经Fiddler,那么这就能解释为什么开启Fiddler后速度变慢了!

这个就是经常说的网络劫持,类似的工具还有httpwach,httpanalyzer等,由此可见这种原理的测试数据会导致数据偏离实际,不建议使用!

3. 不能使用Fiddler这种原理,由于webbrowser有限的功能和扩展,基本上不能取到har里面的数据,这个方案将不可行!

4. 建议:使用berserkjs方案,目前IP未能解决,需想办法解决此问题!

网页前端页面加载性能测试各工具可行性方案分析

标签:

原文地址:http://www.cnblogs.com/liangxiaofeng/p/4910688.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!