Visual Studio的Web Performance Test提取规则详解(1)

总结

Visual Studio的Web Performance Test是基于HTTP协议层的,它不依赖于浏览器,通过直接接收,发送HTTP包来和Web服务器交互。Web Performance Test发送和接收的一系列请求和响应之间存在相关性,例如,用户登录后,SID被传递给客户端,下一次请求时,需要把SID发送到服务器。因此,Web Perfomance Test 定义了多种提取规则,帮助从服务器响应中提取信息,用于之后的请求。或者保存起来,作为测试结果的一部分。

Web Performance Test提供多种提取规则,以下表格来自MSDN

提取规则的类型 说明
Selected Option 提取列表或组合框中的选定文本。
Tag Inner Text 从指定的 HTML 标记中提取内部文本。
Extract Attribute Value 从指定的 HTML 标记中提取特性的值。 有关以下内容的更多信息使用提取特性值规则的更多信息,请参见演练:向 Web 性能测试添加验证规则和提取规则。
Extract Form Field 提取响应中指定窗体字段的值。
Extract HTTP Header 提取 HTTP 标头的值。
Extract Regular Expression 从与正则表达式相匹配的响应中提取文本。
Extract Text 从响应中提取文本。
Extract Hidden Fields 从响应中提取所有的隐藏字段。

如何添加提取规则

在完成Web Performance Test录制后(Visual Studio进行Web性能测试系列有提到),右键点击一条记录,选择 “Add Extraction Rule”:

“Add Extraction Rule”对话框将被打开:

然后,我们可以通过完成其属性的方式来添加规则。

那么,怎么如何知道从哪里提取参数,要提取哪些参数呢?我们前面讲过,从Web请求的响应中提取。 录制完成后,我们需要先运行测试一遍,然后,我们查看测试结果:

打开Reponse标签,我们可以看到HTTP响应的内容,包括Headers和Body,从中,我们可以观察需要提取哪些参数,作为接下来的请求或者结果分析使用。

本系列的第一部分我们先介绍“Extract Hidden Fields”规则。

Extract Hidden Fields规则

“Extract Hidden Fields”是最重要的一条规则,因为提交的请求中许多重要的表单字段都是保存在Hidden Fields中的,例如asp.net的“__VIEWSTATE”等。

自动抽取与绑定

在默认配置下,Web Performance Test将自动添加“Extract Hidden Fields”规则,并且自动绑定提取的参数到请求上。我们可以通过Tools –> Options –> Test Tools –> Web Test中的“Automatically extract and bind hidden fields”来配置是否要自动抽取和绑定隐藏的字段。

手动添加规则

虽然我们可以通过VS自动添加该规则,但是我们还是来看看如何手动添加它:

该规则只有3个属性:

Context Parameter Name:参数名,我们可以简单的命名为“1”,那么实际的参数名为“$HIDDEN1”。

Required:当Required为True时,如果没有抽取到任何隐藏字段,抽取规则失败。

Html Decode:指示在放入 Web 测试上下文中之前提取的值是否应进行 HTML 解码。

手动绑定

在手动添加了“Extract Hidden Field”规则后,我们在需要把提取的参数绑定到请求的post或get参数中。

选择”QueryString Parameters”或者”Form Post Parameters”中的一个参数,右键点击,选择Properties

在Properties面板中,把Value值从录制产生的硬编码替换为{{$HIDDEN1.dsh}},dsh为隐藏字段的字段名。

本文由知平软件刘斌华原创,转载请注明出处。

知平软件致力于移动平台自动化测试技术的研究,我们希望通过向社区贡献知识和开源项目,来促进行业和自身的发展。

原文地址:https://www.cnblogs.com/micro-chen/p/10360326.html

时间: 2024-08-09 22:18:44

Visual Studio的Web Performance Test提取规则详解(1)的相关文章

Visual Studio进行Web性能测试- Part I

Visual Studio进行Web性能测试- Part I 2012-08-29 08:01 by 知平软件, 5356 阅读, 9 评论, 收藏, 编辑 原文作者:Ambily.raj Visual Studio是可以用于性能测试的工具之一.Visual Studio Test版或Visual Studio 2010旗舰版为自动化测试提供了支持.本文介绍Visual Studio的Web测试功能. 介绍 对于一个多用户的应用程序,性能是非常重要的.性能不仅是执行的速度,它包括负载和并发方面.

Visual Studio进行Web性能测试- Part II

Visual Studio进行Web性能测试- Part II 2012-08-31 14:34 by 知平软件, 7557 阅读, 5 评论, 收藏, 编辑 原文作者:Ambily.raj 对于一个多用户的应用程序,性能是非常重要的.性能不仅是执行的速度,它包括负载和并发方面.Visual Studio是可以用于性能测试的工具之一.Visual Studio Test版或Visual Studio 2010旗舰版为自动化测试提供了支持. 介绍 对于一个多用户的应用程序,性能是非常重要的.性能不

Visual Studio发布Web项目报错:Unable to add 'xxx' to the Web site. Unable to add file 'xxx'. The specified file could not be encrypted.

背景 Visual Studio下的Web项目 现象 发布时遇到Unable to add 'xxx' to the Web site.  Unable to add file 'xxx'. The specified file could not be encrypted.的报错 原因 这些文件(文件夹)被设置为"加密".可能因为这些文件是从Internet上下载并复制到项目下的文件夹,在被下载前就已经被启用"加密"选项 这些文件(文件夹)来自于其他计算机并被锁定

Visual Studio 2013 Web开发、新增功能:“Browser Link”

微软正式发布Visual Studio 2013 RTM版,微软还发布了Visual Studio 2013的最终版本..NET 4.5.1以及Team Foundation Server 2013.下面我们体验下Visual Studio 2013 Web开发方面有哪些特性,具体可以参看http://www.asp.net/visual-studio/overview/2013/release-notes. 1..net framework 2.0/3.0/3.5/4.0/4.5/4.5.1

Visual Studio 2013 Web开发新特性

微软正式发布Visual Studio 2013 RTM版,微软还发布了Visual Studio 2013的最终版本..NET 4.5.1以及Team Foundation Server 2013.下面我们体验下Visual Studio 2013 Web开发方面有哪些特性,具体可以参看http://www.asp.net/visual-studio/overview/2013/release-notes. 1..net framework 2.0/3.0/3.5/4.0/4.5/4.5.1

Visual Studio进行Web性能测试- Part III

Visual Studio进行Web性能测试- Part III 原文作者:Ambily.raj 对于一个多用户的应用程序,性能是非常重要的.性能不仅是执行的速度,它包括负载和并发方面.Visual Studio是可以用于性能测试的工具之一.Visual Studio Test版或Visual Studio 2010旗舰版为自动化测试提供了支持. 介绍 对于一个多用户的应用程序,性能是非常重要的.性能不仅是执行的速度,它包括负载和并发方面.性能测试是对以下问题的回答 我们如何确保我们的新的应用程

[搜索]波特词干(Porter Streamming)提取算法详解(3)

 接上 [搜索]波特词干(Porter Streamming)提取算法详解(2) 下面分为5大步骤来使用前面提到的替换条件来进行词干提取. 左边是规则,右边是提取成功或者失败的例子(用小写字母表示). 步骤1 SSES -> SS                   caresses  ->  caress IES  -> I                          ponies    ->  poni ties      ->  ti SS   -> S

asp.net中web.config配置节点大全详解【转】

web.config 文件查找规则: (1)如果在当前页面所在目录下存在web.config文件,查看是否存在所要查找的结点名称,如果存在返回结果并停止查找. (2)如果当前页面所在目录下不存在web.config文件或者web.config文件中不存在该结点名,则查找它的上级目录,直到网站的根目录. (3)如果网站根目录下不存在web.config文件或者web.config文件中不存在该节点名则在%windir%"Microsoft.NET"Framework"v2.0.

Nginx之location 匹配规则详解

Nginx之location 匹配规则详解 关于一些对location认识的误区 1. location 的匹配顺序是"先匹配正则,再匹配普通". 矫正: location 的匹配顺序其实是"先匹配普通,再匹配正则".我这么说,大家一定会反驳我,因为按"先匹配普通,再匹配正则"解释不了大家平时习惯的按"先匹配正则,再匹配普通"的实践经验.这里我只能暂时解释下,造成这种误解的原因是:正则匹配会覆盖普通匹配(实际的规则,比这复杂,