Web 性能测试引擎概述
了解 Web 性能测试引擎工作对正确创建和配置 Web 性能测试有何帮助。
要求
- Visual Studio 旗舰版
了解 Web 性能测试引擎
关于 Web 性能测试引擎,需要了解的一个关键概念是 Web 性能测试在 HTTP 层工作。Web 性能测试包含 HTTP 请求列表;其中每个请求主要由查询字符串参数、窗体参数和一个面向 Web 服务器的 URL 组成。Web 性能测试引擎执行这些 HTTP 请求,检索来自服务器的响应并收集计时数据。
由于 Web 性能测试引擎在 HTTP 层工作,它不运行 JavaScript 或 ActiveX 控件等客户端脚本。Web 性能测试涉及在服务器上生成负载。因此,只影响网页外观的客户端脚本对于 Web 性能测试而言无关紧要。用于设置参数值或产生 AJAX 等其他 HTTP 请求的客户端脚本不影响服务器上的负载,因此您可能需要手动修改 Web 性能测试以模拟该脚本。
不少人认为,由于记录发生在 Internet Explorer 中,并且 Web 性能测试结果查看器在浏览器控件中显示结果,因此 Web 性能测试一定是以某种方式使用 Internet Explorer 执行的。这种理解有误。所有请求都是直接使用 Web 性能测试引擎来执行;不会发生与 Internet Explorer 或任何其他浏览器进行的交互。Web 性能测试引擎使用标准 HTTP 请求/响应消息直接与目标 Web 服务器进行通信。
同样, Web 性能测试查看器中“Web 浏览器”选项卡上的嵌入式 Internet Explorer 控件只显示 Web 性能测试引擎所收到的响应页。Web 性能测试引擎将响应写入磁盘上的某一临时位置,然后将这些临时文件加载到 Web 性能测试查看器中的 Internet Explorer 控件中。此浏览器控件在结果查看器中专门配置为不运行 JavaScript 或 ActiveX 控件。一个造成混淆的常见情况是,当客户测试承载控件的页面时,会在结果查看器的浏览器控件中显示错误。这并不意味着测试没有正常运行。您必须检查响应选项卡以验证响应。最终的Visual Studio将在结果查看器的新承载自定义选项卡的可扩展性,以使自定义浏览器。若要了解用于显示这些类型响应的新浏览器控件,请参见 codeplex.com/teamtestplugins。
另一个造成混淆的情况是,在运行 Web 负载测试时可以选择不同的浏览器模板。这些浏览器模板仅影响随每个请求发送的默认的一组 HTTP 标头。Web 服务器用于确定浏览器类型的关键标头是 UserAgent 标头。无论选择哪个浏览器模板,Web 性能测试引擎都将直接使用标准 HTTP 协议发出请求。