• 软件测试技术
  • 软件测试博客
  • 软件测试视频
  • 开源软件测试技术
  • 软件测试论坛
  • 软件测试沙龙
  • 软件测试资料下载
  • 软件测试杂志
  • 软件测试人才招聘
    暂时没有公告

字号: | 推荐给好友 上一篇 | 下一篇

LoadRunner脚本完善连载之二

发布: 2008-8-27 10:10 | 作者: webmaster | 来源: 本站原创 | 查看: 271次 | 进入软件测试论坛讨论

领测软件测试网

出现对话框脚本中注释的代码如下:

 

5.2.4 参数化输入

如果用户在录制脚本过程中,填写提交了一些数据,比如要增加数据库记录。这些操作都被记录到了脚本中。当多个虚拟用户运行脚本时,都会提交相同的记录,这样不符合实际的运行情况,而且有可能引起冲突。为了更加真实的模拟实际环境,需要各种各样的输入。

参数化输入是一种不错的方法。

用参数表示用户的脚本有两个优点:

① 可以使脚本的长度变短。

② 可以使用不同的数值来测试你的脚本。例如,如果你企图搜索不同名称的图书,你

仅仅需要写提交函数一次。在回放的过程中,你可以使用不同的参数值,而不只搜索一

个特定名称的值。

参数化包含以下两项任务:

① 在脚本中用参数取代常量值。

② 设置参数的属性以及数据源。

参数化仅可以用于一个函数中的参量。你不能用参数表示非函数参数的字符串。

另外,不是所有的函数都可以参数化的。

参数化输入的讲解,我们采用一个例子的方式来进行。

假如有以上的一个提交数据的窗体,我们想参数化高亮显示的部分(31)。操作方法很

简单,我们只要选中“31”,然后点鼠标右键

选择“Replace with a parameter. ”,出现以下窗口:

下面我们重点介绍一下参数的类型。

n DateTime:很简单,在需要输入日期/时间的地方,可以用DateTime 类型来替代。其属性设置也很简单,选择一种格式即可。当然也可以定制格式。

n Group Name:暂时不知道何处能用到,但设置比较简单。在实际运行中,LoadRunner使用该虚拟用户所在的Vuser Group 来代替。但是在VuGen 中运行时,Group Name将会是None。

n Load Generator Name:在实际运行中,LoadRunner 使用该虚拟用户所在Load

Generator 的机器名来代替。

n Iteration Number:在实际运行中,LoadRunner 使用该测试脚本当前循环的次数来

代替。

n Random Number:随机数。很简单。在属性设置中可以设置产生随机数的范围

n Unique Number:唯一的数。在属性设置中可以设置第一个数以及递增的数的大小。

注意:使用该参数类型必须注意可以接受的最大数。例如:某个文本框能接受的

最大数为99。当使用该参数类型时,设置第一个数为1,递增的数为1,但100 个

虚拟用户同时运行时,第100 个虚拟用户输入的将是100,这样脚本运行将会出错。

注意:这里说的递增意思是各个用户取第一个值的递增数,每个用户相邻的两次循

环之间的差值为1。举例说明:假如起始数为1,递增为5,那么第一个用户第一

次循环取值1,第二次循环取值2;第二个用户第一次循环取值为6,第二次为7;

依次类推。

n Vuser ID:设置比较简单。在实际运行中,LoadRunner 使用该虚拟用户的ID 来代替,该ID 是由Controller 来控制的。但是在VuGen 中运行时,Vuser ID 将会是 –1。n File:需要在属性设置中编辑文件,添加内容,也可以从现成的数据库中取数据(下

面我们将会介绍)

n User Defined Function:从用户开发的dll 文件提取数据。就目前我认为,这种方式没有必要。VuGen 支持C 语言的语法,在VuGen 中重新编写类似的函数应该不难。

(一家之言,仅供参考)

上面的例子中,我们取随机数即可。

点“Properties… ..”按钮,进行属性设置窗口

添入随机数的取值范围为(1-50),选择一种数据格式。在Update Value on 中有以下几个选项:

n Each Occurrence:在运行时,每遇到一次该参数,便会取一个新的值

n Each iteration:运行时,在每一次循环中都取相同的值

n Once:运行时,在每次循环中,该参数只取一次值

这里我们用的是随机数,选择Each Occurrence 非常合适。

下面我们再举一个file 的例子。我们要用数据库中的用户名来参数化登陆用户名。

选择要参数化的数据,右键,选择“Replace with a parameter.”,出现以下窗口:

点“Properties… ..”,按钮,出现以下窗口

注意:参数的文件名不要使用con.dat、pm.dat 或者lpt*.dat 等系统装置名

下面我们将会连接数据库,从数据表中选择用户名。点“Data Wizard”按钮

使用第2 项,下一步

添入连接字符串和SQL 语句后,点Finish 按钮,出现查询结果。

提醒:在参数数据显示区,最多只能看到100 行,如果数据超过100 行,只能点“Edit”

按钮,进入记事本看。

“Select next row ”有以下几种选择:

n Sequential:按照顺序一行行的读取。每一个虚拟用户都会按照相同的顺序读取

n Random:在每次循环里随机的读取一个,但是在循环中一直保持不变

n Unique :唯一的数。注意:使用该类型必须注意数据表有足够多的数。比如

Controller 中设定20 个虚拟用户进行5 次循环,那么编号为1 的虚拟用户取前5

个数,编号为2 的虚拟用户取6-10 的数,依次类推,这样数据表中至少要有100

个数据,否则Controller 运行过程中会返回一个错误。

n Same Line As 某个参数(比如Name):和前面定义的参数Name 取同行的记录。

通常用在有关联性的数据上面。

我们这里取值Sequential 即可。

Advance row each iteration 选中即可,表示每一次循环都往前走一行。

手工输入数据比较简单,这里就不再单独介绍了。

延伸阅读

文章来源于领测软件测试网 https://www.ltesting.net/

TAG: loadrunner LoadRunner Loadrunner loadRunner snooker 脚本

21/212>

关于领测软件测试网 | 领测软件测试网合作伙伴 | 广告服务 | 投稿指南 | 联系我们 | 网站地图 | 友情链接
版权所有(C) 2003-2010 TestAge(领测软件测试网)|领测国际科技(北京)有限公司|软件测试工程师培训网 All Rights Reserved
北京市海淀区中关村南大街9号北京理工科技大厦1402室 京ICP备10010545号-5
技术支持和业务联系:info@testage.com.cn 电话:010-51297073

软件测试 | 领测国际ISTQBISTQB官网TMMiTMMi认证国际软件测试工程师认证领测软件测试网