Web性能
使用Web性能测试可以很容易地创建一组可重复的测试,从而帮助我们分析web应用程序的性能,找到性能瓶颈。
Web性能测试可以验证一个Web应用程序的行为是否正确。它们会向目标Web应用程序发布一组有序的HTTP/HTTPS请求,然后分析每个期望的响应行为。利用集成的Web Test Recorder可以记录通过浏览器窗口与目标Web站点所进行的交互活动,并以此创建一个测试。当测试录制完成后,可以使用这个Web性能测试按相同时序重复这些录制操作。
Web性能测试可以作为生成负载测试的基础。而可编程用户界面测试则用于测试用户界面的行为和布局是否正确。
在创建Web性能测试之前,需要一个用于测试Web的应用程序。
运行Web性能测试的Web站点通常(但不要求)驻留在本地开发环境的计算机上。如果是对远程计算机进行测试,那么就必须创建一个虚拟目录或Web站点并部署示例应用程序。可能还要再本地计算机上创建一个虚拟目录。
创建web性能测试的方法主要有三种:
第一种方法是使用Web Test Recorder,这也是迄今为止最常用的方法。
第二种方法是手动创建一个测试,然后使用Web Test Editor添加每个步骤,这种方法费时且容易出错,但可能是好的Web性能测试所需要的。
第三种方法是创建一个可编码Web性能测试,它通过代码指定每个操作,自定义能力强。还可以从现有的Web性能测试生成可编码Web性能测试。
Web性能测试是以XML文件形式存储的,扩展名为.webtest:

在创建了Web性能测试之后,将启动一个浏览器实例,其中包含一个Web Test Recorder停靠窗口,如果未启动Web Test Recorder窗口,则需要在IE浏览器的Manage add-ons里面先启用它。
录制Web性能测试非常简单,可以像一般用户那样,在Web浏览器中使用Web应用程序,在这个过程中,Visual Studio会自动记录我们的操作,并将它们保存到web性能测试中。
Web Test Recorder一启动就会开始捕获IE发送和接收的所有HTTP/HTTPS流量,其中包括浏览器主页,可能还包括一些发送数据的浏览器插件和工具条。

在web性能测试录制完成后,单击stop按钮,关闭浏览器并显示Web Test Editor,其中包含了刚刚录制的Web性能测试。Web Test Editor将测试显示为一系列发送到Web应用程序的请求。经常需要使用Web Test Editor修改设置或向录制的测试中添加功能,包括添加验证、从web响应提取数据以及一个源读取数据。
单击Web Test Editor工具条中的Parameterize Web Servers按钮,单击change按钮,可以看到Change Web Server对话框,利用这个对话框可以对Web性能测试进行配置,既可以将其配置为使用一个标准的Web应用服务(如IIS),也可以将其配置为使用ASP.NET Development Server:

在执行Web性能测试之前,可能需要检查一下该测试运行时所使用的设置。

当一个测试包含Web性能测试时,可以使用Fixed run count 选项指定Web性能测试的具体执行次数。运行几次测试之后可以消除由客户机或服务器的系统问题所引起的错误性能计时,从而使我们可以对Web站点的实际性能有更好估计。
修改浏览器类型并不能帮助我们确定Web应用程序是否按指定浏览器类型期望的方式显示,因为Web性能测试只检查HTTP/HTTPS响应,不进行实际的页面显示。
单击Run按钮,即可运行一个 Web性能测试,当一个测试开始运行时,将出现一个专门负责执行Web性能测试的窗口:

Web Browser用于显示相应的呈现版本。Request选项卡用于显示提供给Web应用程序的详细内容,包括所有头和任意一个请求体,如果是一个HTTP POST请求,那么将显示所有头和一个请求体。Response选项卡用于显示Web应用程序发回的所有头和响应体。Context选项卡用于列出所有上下文参数及选中请求的值。Details选项卡用于显示所有已分配验证和提取规则的状态。
Web性能的更多相关文章
- Web性能优化:What? Why? How?
为什么要提升web性能? Web性能黄金准则:只有10%~20%的最终用户响应时间花在了下载html文档上,其余的80%~90%时间花在了下载页面组件上. web性能对于用户体验有及其重要的影响,根据 ...
- 关于WEB 性能优化 (摘抄)
压缩源代码和图片 JavaScript文件源代码可以采用混淆压缩的方式,CSS文件源代码进行普通压缩,JPG图片可以根据具体质量来压缩为50%到70%,PNG可以使用一些开源压缩软件来压缩,比如24色 ...
- Web性能--TCP的构成
前言:阅读<Web性能权威指南>摘录笔记.在这本书开篇就读到第一句话令人印象深刻: "合格的开发者知道怎么做,而优秀的开发者知道为什么那么做". 内容大纲: 1.因特网 ...
- Web性能优化-合并js与css,减少请求
Web性能优化已经是老生常谈的话题了, 不过笔者也一直没放在心上,主要的原因还是项目的用户量以及页面中的js,css文件就那几个,感觉没什么优化的.人总要进步的嘛,最近在被angularjs吸引着,也 ...
- web性能优化——浏览器相关
简介 优化是一个持续的过程.所以尽可能的不要有人为的参与.所以能自动化的或者能从架构.框架级别解决的就最更高级别解决. 这样即能实现面对开发人员是透明的.不响应,又能确保所有资源都是被优化过的. 场景 ...
- Web性能API——帮你分析Web前端性能
前端性能统计必备api,有不知道的吗? 正文从这开始- 开发一个现代化的互联网网站是一项复杂的任务,需要各种职能的密切合作以应对用户日新月异的需求.其中,网页的性能直接决定了用户的体验,而随着新型客户 ...
- HTTP/2 对 Web 性能的影响(下)
一.前言 我们在 HTTP/2 对 Web 性能的影响(上)已经和大家分享了一些关于 Http2 的二项制帧.多用复路以及 APM 工具等,本文作为姊妹篇,主要从 http2 对 Web 性能的影响. ...
- HTTP/2 对 Web 性能的影响(上)
一.前言 HTTP/2 于 2015 年 5 月正式推出.自诞生以来,它就一直在影响着网络性能最佳实践.在本篇文章中,我们将讨论 HTTP/2 的二进制帧.延迟削减.潜在利弊以及相应的应对措施. 超文 ...
- [转]Web性能监控自动化探索之路–初识WebPageTest
本文转自:http://www.webryan.net/2013/01/use-webpagetest-to-analyze-web-performance/ 无论是从Velocity 2012还是在 ...
随机推荐
- Identifier 'Logic.DomainObjectBase._isNew' is not CLS-compliant
http://stackoverflow.com/questions/1195030/why-is-this-name-not-cls-compliant To get around this err ...
- ubuntu 13.10 Ralink RT3290 无线与蓝牙4.0的驱动安装
我的本是hp envy15, 蓝牙与无线的型号是Ralink RT3290, 装了Ubuntu 13.10 64bit后,蓝牙无法使用,无线几秒钟就会断开,查知,是因为驱动问题. ## 准备工作 首先 ...
- LCLFramework框架 1.1 Pre-Alpha 源码公布
使用开发框架的好处:1.框架在技术上为软件系统提供了完整的模式实践2.框架为团队提供了合理可行的软件开发过程模式3.框架的应用大大提高了团队的开发效率,团队只需要关注与领域相关的业务实现,而无需关注具 ...
- ECSHOP安装百度编辑UEditor教程
ECSHOP系统自带的编辑器大家用过都知道,难用不说,还不能批量上传图片.很多朋友都喜欢百度编辑器,因为百度编辑器功能强大,使用方便,而且不会生成太多多余代码.网上有许多ECSHOP整合百度编辑器的教 ...
- 安装 LuaSocket
如果你安装有 Lua 模块的安装和部署工具 -- LuaRocks,那么一条指令就能安装部署好 LuaSocket: luarocks install luasocket
- 2016年象行中国(上海站)圆满结束,会议PPT分享
2016年象行中国(上海站)已于5-21日圆满结束,所有技术交流的文档和PPT经整理后,现集中存放在云盘中,相关议题如下: DeepGreen-LLVM-Intro.pptx ... 1.1M ...
- composite
#coding:utf-8 import math # 在确定函数前,我们先来了解下算法 # 有数 n 判断其是否是合数 # 如果 n 除以 range(2,math.sqrt(n)+1) 能够整除, ...
- java后台进程和线程优先级
1. 后台线程:处于后台运行,任务是为其他线程提供服务.也称为“守护线程”或“精灵线程”.JVM的垃圾回收就是典型的后台线程. 特点:若所有的前台线程都死亡,后台线程自动死亡. 设置后台线程:Thre ...
- json date convert
function getDateTime(jsondate) { var date = new Date(parseInt(jsondate.replace("/Date(", & ...
- 在spring,mybatis整合配置中走的弯路(1)
在接触一个新东西,总免不了走一些弯路,也正是在这些弯路中,我们不断的成长. 从git上把之前写的代码扒下来,看看我在当初使用spring与mybatis中所走的弯路,路过的君子也可引以为戒. < ...