对于职业我们要有梦想,不抛弃不放弃。人生才会有乐趣。
参数化的方法以及技巧
上一篇 /
下一篇 2010-12-17 14:57:04
/ 个人分类:性能测试
脚本的结构(B/S)
Web(Http/Html)脚本本身分INIT,ACTION,END三部分,各部分的解释:INIT部分可以理解为初始部分, ACTION可以理解为事务部分,也是测试测试的主题,END是退出结束。重复的时候,仅重复action部分。
(2.)脚本的参数化
- 如果用户在录制脚本过程中,填写提交了一些数据,比如要增加数据库记录。为了更加真实的模拟实际环境,需要各种各样的输入。参数化输入是一种不错的方法。
- 用参数表示用户的脚本有两个优点:
①可以使脚本的长度变短。
②可以使用不同的数值来测试你的脚本。
①在脚本中用参数取代常量值。
②设置参数的属性以及数据源。
- 参数化仅可以用于一个函数中的参量。不能用参数表示非函数参数的字符串。
参数的数据有3中获取的方法:
1. 文件或表参数类型。(在文件中进行参数的时候,参数之间用逗号分开。)
2. 内部数据参数类型。
3. 用户定义的参数类型。
(4.)参数的分配方法
数据分配方法描述
分配方法 | 描述 |
Sequential(顺序) | “顺序”方法是顺序地向Vuser分配数据。当正在运行的Vuser访问数据表时,它将会提取下一个可用的数据行。如果在数据表中没有足够的值,则VuGen返回到表中的第一个值,循环继续直到测试结束。 |
Random(随即) | “随机”方法是为每一个Vuser分配一个数据表中的随机值。当运行一个场景会话或业务流程监控器配置文件时,可以指定随机顺序的种子数。每个种子值代表用于测试执行的一个随机顺序。每当使用该种子值时,会将相同顺序的值分配给场景或会话步骤中的Vuser。如果在测试执行中发现问题,并且要使用相同的随即值顺序重复该步骤,请启用该选项。 |
Unique(唯一) | “唯一”方法是为每一个Vuser的参数分配一个唯一的顺序值。在这种情况下,必须确保表中的数据对所有的Vuser和他们的迭代来说都是充足的。如果拥有20个Vuser,并且要云乡5次迭代,则表格中必须至少包含有100个唯一值。 |
(5.)数据的更新方式
数据的更新方式描述表
更新方式 | 描述 |
Each occurrence (每次出现) | “每次出现”方法是指示Vuser在每次参数出现时使用新值。当使用同一个参数的几个语句不相关时,该方法非常有用。 |
Each iteration (每次迭代) | “每次迭代“方法指示Vuser在每次脚本迭代时使用新值。如果一个参数在脚本中出现了若干次,则Vuser在整个迭代中该参数的所有出现使用同一个值。当使用同一个参数的几个语句相关时,该方法非常有用。 |
Once | “一次“方法指示Vuser在场景或会话步骤运行期间仅对参数字更新一次。Vuser为该参数的所有出现和所有迭代使用同一个值。当使用日期和时间时该类型非常有用。 |
(6.)参数组合使用的情况
| Sequential | Random | Unique |
Each iteration | 2个用户在第一个循环里都取99001,在第二个循环里都取99002,循环取下去,如果循环次数超出参数表里数据的长度,就从参数表第一行重新循环取数。 | 每个用户在每个循环里都随机从参数表中取一个随机数。 | 每个用户在每个循环里都会从参数表中依次取一个唯一的值。如果有3个循环,第一个用户在3个循环里依次取99001,99002,99003,第二个用户取99004,99005,99006,如果参数表长度不够,见上面解释的内容。 |
Each Occurrence | 2个用户第一次碰到该参数取99001,第二次碰到该参数取99002,依次类推,即使是在同一个循环里,如果到了参数表末尾,就从参数表头重新循环取。 | 每个用户在每碰到该参数一次,就随机从参数表中取一次值。即使是在同一个循环里。 | 每个用户在每碰到一次该参数都会从参数表中依次取一个唯一的值。即使是在同一个循环里,取数的方式和上面的一样。 |
Once | 2个用户在所有的循环中都取用99001 | 每个循环在第一个次随机分配了数据以后,在以后所有的循环中都保持不变 | 第一个用户在所有循环里使用99001,第二个用户在所有的循环里都使用99002, |
收藏
举报
TAG: