博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Visual Studio的Web Performance Test提取规则详解(1)
阅读量:5265 次
发布时间:2019-06-14

本文共 1829 字,大约阅读时间需要 6 分钟。

 

总结

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

 

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

提取规则的类型 说明
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录制后(系列有提到),右键点击一条记录,选择 “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/vowei/archive/2012/09/17/2688465.html

你可能感兴趣的文章
极其简单的使用基于gulp和sass前端工作流
查看>>
卡牌简单动作编辑器
查看>>
上帝造题五分钟
查看>>
所谓的传值和引用
查看>>
面向对象的一些性质
查看>>
输入数字个数以及要找的位置,输出以字典序为准的那个数
查看>>
第十章 优先级队列 (c)堆排序
查看>>
12_传智播客iOS视频教程_注释和函数的定义和调用
查看>>
IO,容器
查看>>
一次深刻的教训。js和java投票界面功能提供 ajax返回前后台代码以及动态的添加input和点击动态添加的input的单击事件...
查看>>
c++ algorithm 的用法
查看>>
面试题:编写上传和下载文件测试用例
查看>>
hibernate jar包介绍
查看>>
所谓的大厂让人思考人生
查看>>
IntelliJ IDEA 常用快捷键,maven依赖图,个性化设置,禁用Search Everywhere
查看>>
.6-浅析express源码之Router模块(2)-router.use
查看>>
[转]谈谈where条件中函数的使用(deterministic)
查看>>
在Windows平台下安装与配置Memcached及C#使用方法
查看>>
BZOJ 1036: [ZJOI2008]树的统计Count(树链剖分)
查看>>
【jenkins】jenkins实时显示python脚本输出
查看>>