Visual Studio的Web Performance Test提取规则详解(2)
总结
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 | 从响应中提取所有的隐藏字段。 |
在上文中,我们讲解了“Extract Hidden Fields”规则。本文将继续讲解其他提取规则。
例子
本文我们以一个Asp.net的例子讲解其他规则,该例子参考了Advanced capability in Web Performance Test of VS2010一文。读者可以在这里下载该例子的代码。
这是一个简单的计算器程序,提供4则运算。
我们设计Case如下:
1,计算 2+1=3;
2,循环计算,3+2=5,5+3=8,8+5=13 …
首先,我们进行录制,录制完成后,我们可以看到提交的表单包含参数如下:
根据我们设计的Case,除了2+1外,后面的计算我们需要提取Num1TextBox中的值填充在Num2TextBox中,把结果中的值提取出来填充在Num1TextBox中,再提交表单。
"Extract Attribute Value“提取规则
我们通过"Extract Attribute Value”规则从web响应中抽取Num1TextBox提取值:
属性填充如下所示:
其中,Tag Name决定要提取的控件类型,Attribute Name决定要提取哪个属性的值,Match Attribute Name和Match Attribute Value用控件的某个属性的值进行匹配。
"Extract Text”提取规则
我们通过"Extract Text”规则从web响应中抽取ResultLabel的值:
属性填充如下:
规则将提取Starts With和Ends With之间的文本。
绑定提取的参数
现在,我们已经为第一次提交的表单(也就是2+1=3)的响应添加了2条提取规则:
接下来,我们需要把规则提取的参数绑定到下一次表单的post参数中:
这时,执行case,就可以得到3+2=5。
添加循环
为了达到循环计算的效果,如计算3+2=5,5+3=8,8+5=13,13+8=21 ….需要添加一个循环:
为了对循环中的每次提交后的响应都进行提取,我们需要把之前添加的两个规则拷贝到循环内的URL中,如上图所示。
循环执行9次后的结果:
其他提取规则
"Selected Option"提取规则
在上面的例子中,如果我们希望在循环内,计算符号不使用硬编码的“+”号,而是使用上次请求选中的符号,需要使用"Selected Option"提取规则,该规则将提取select控件当前选中的值,属性配置如下:
其中,"Select Tag Name”是select控件的ID或Name。
"Extract Regular Expression"提取规则
上文中提取Result参数,如果我们使用正则表达式规则抽取会怎么样呢? 如:
我们发现,抽取的Result值将会是"等于5。",而不是"5",并不适用上面的例子。
总结
目前为止,我们讲解了5种取规则,剩下的几种就不再一一介绍。下一讲,我们将介绍如何使用自定义规则。
知平软件致力于移动平台自动化测试技术的研究,我们希望通过向社区贡献知识和开源项目,来促进行业和自身的发展。
Visual Studio的Web Performance Test提取规则详解(2)的更多相关文章
- Visual Studio的Web Performance Test提取规则详解(3)
总结 Visual Studio的Web Performance Test是基于HTTP协议层的,它不依赖于浏览器,通过直接接收,发送HTTP包来和Web服务器交互.Web Performance T ...
- Visual Studio的Web Performance Test提取规则详解(1)
总结 Visual Studio的Web Performance Test是基于HTTP协议层的,它不依赖于浏览器,通过直接接收,发送HTTP包来和Web服务器交互.Web Performance T ...
- 转:Visual Studio进行Web性能测试- Part I
原文作者:Ambily.raj Visual Studio是可以用于性能测试的工具之一.Visual Studio Test版或Visual Studio 2010旗舰版为自动化测试提供了支持.本文介 ...
- Visual Studio进行Web性能测试- Part I
Visual Studio进行Web性能测试- Part I 2012-08-29 08:01 by 知平软件, 5356 阅读, 9 评论, 收藏, 编辑 原文作者:Ambily.raj Visua ...
- Visual Studio 使用 Web Deploy 发布远程站点
Ø 简介 本文介绍 Visual Studio 如何使用 Web Deploy发布远程站点,有时候我们开发完某个功能时,需要快速将更改发布至服务器.通常 Visual Studio 可以采用两种方式 ...
- Visual Studio进行Web性能测试- Part II
Visual Studio进行Web性能测试- Part II 2012-08-31 14:34 by 知平软件, 7557 阅读, 5 评论, 收藏, 编辑 原文作者:Ambily.raj 对于一个 ...
- Visual Studio 2013 Web开发
cnbeta新闻:微软正式发布Visual Studio 2013 RTM版,微软还发布了Visual Studio 2013的最终版本..NET 4.5.1以及Team Foundation Ser ...
- 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开发、新增功能:“Browser Link”
微软正式发布Visual Studio 2013 RTM版,微软还发布了Visual Studio 2013的最终版本..NET 4.5.1以及Team Foundation Server 2013. ...
随机推荐
- 【HDU 3401 Trade】 单调队列优化dp
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=3401 题目大意:现在要你去炒股,给你每天的开盘价值,每股买入价值为ap,卖出价值为bp,每天最多买as ...
- steps animation
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
- 【iCore3 双核心板_FPGA】例程十三:FSMC总线通信实验——复用地址模式
实验指导书及代码包下载: http://pan.baidu.com/s/1nuYpI8x iCore3 购买链接: https://item.taobao.com/item.htm?id=524229 ...
- 20145224&20145238《信息安全系统设计基础》实验一 开发环境的熟悉
20145224陈颢文20145238荆玉茗 <信息安全系统设计基础>第一次实验报告 课程:信息安全系统设计基础 班级: 1452 姓名:荆玉茗 陈颢文 学号:20145238 20145 ...
- mysql笔记(存储引擎)
读写锁:. 表级锁:开销小,加锁快:不会出现死锁:锁定粒度大,发生锁冲突的概率最高,并发度最低. 行级锁:开销大,加锁慢:会出现死锁:锁定粒度最小,发生锁冲突的概率最低,并发度也最高. 页面锁:开销和 ...
- IAR EW8051-8.10.4安装及破解方法
第一步:获取破解license 1: 点击桌面左下角“开始”按钮,找到cmd.exe,右键创建cmd.exe 快捷方式到桌面: ————如果是windows7 ,请右键点击cmd.exe 快捷图标,点 ...
- class-dump + DumpFrameworks.pl
目的:实现生成 private framework 的 .h,以便倒入项目使用私有 api. 一.class-dump 下载地址: http://stevenygard.com/download/ 安 ...
- 《linux内核设计与实现》读书笔记第十八章
第18章 调试 18.1 准备开始 准备工作需要的是: 一个bug 一个藏匿bug的内核版本 相关内核代码的知识和运气 18.2 内核中的bug 内核中bug的产生原因 从明白无误的错误代码——没有把 ...
- 为什么微信android图片质量会比iphone的差?
为什么微信android图片质量会比iphone的差? 我们团队最初也纠结过这个问题,费了半天劲.绕了好大圈,直到最后才发现,原来这是谷歌犯得一个“小”错误,而且一直错到了今天. 谷歌的错就在于:li ...
- LeetCode Flatten 2D Vector
原题链接在这里:https://leetcode.com/problems/flatten-2d-vector/ 题目: Implement an iterator to flatten a 2d v ...