使用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选项卡用于显示所有已分配验证和提取规则的状态。

最新文章

  1. Xamarin.Android通知详解
  2. ConfigHelper.cs
  3. 删除顽固node_modules
  4. springMVC基础
  5. makefile中的target到底代表什么?
  6. 【多线程】Java线程面试题 Top 50(转载)
  7. Servlet的PrintWriter out = response.getWriter()使用
  8. iOS7适配问题
  9. 14.18 InnoDB Backup and Recovery 备份和恢复:
  10. 编译安装nginx却requires the PCRE library
  11. NO.1-M2
  12. Tomcat集群应用部署的实现机制
  13. 【vue】项目目录结构及使用多的知识点
  14. 妙用valueForKeyPath
  15. Java多线程之volatile关键字《一》
  16. autolayout原理
  17. 一篇 JPA 总结
  18. json和ajax学习
  19. 自学华为IoT物联网之路
  20. apache用户认证、域名跳转、Apache访问日志(两种格式)

热门文章

  1. 将ASP.NET Core应用程序部署至生产环境中(CentOS7)(转)
  2. Windows下安装 msysGit 以及初始化 Git server环境
  3. WinDbg使用介绍
  4. mysql性能监控工具:mycheckpoint的使用方法
  5. AndroidStudio小技巧--依赖库
  6. [转载] Redis 起步
  7. 菜鸟教程之工具使用(十二)——Eclipse突出显示选中的相同变量
  8. 菜鸟教程之工具使用(十一)——Eclipse去掉未使用的引用
  9. 数据仓库专题(23):总线矩阵的另类应用-Drill Down into a More Detailed Bus Matrix
  10. C# 向Http服务器送出 POST 请求