51Testing软件测试论坛

标题: 利用LoadRunner造数据 [打印本页]

作者: man16181    时间: 2008-8-27 09:56
标题: 利用LoadRunner造数据

在测试过程中,经常遇到要大量造数据的情况。例如在测试统计受理日报的时候,要模拟各种受理的情况,有几种方法可以实现:
 
  一、在受理界面真实做各种受理,如果数据量比较大的话,这个过程比较麻烦。
 
  二、利用QTP的自动化脚本造测试数据,这个如果已经存在自动化的脚本,那么直接拿来用还好些,如果要重新录制的话,也不是一时半会就能造好的。
 
  三、还有一个就是直接往数据库中写记录,那么你要知道数据库中要写哪些表,各个字段的含义等。
 
  四、我是利用loadrunner重复执行来造数据。
 
  现在的业务实现都是分层的,前台界面受理后将业务属性打包发给后台服务,业务逻辑都是由后台完成的,所以我造数据也是从这里入手的,因接口文档都定义的比较完整,所以可以直接抛开前台,直接发送测试串给后台的服务来模拟业务过程。我们单独做后台的集成测试的时候就是这么做的,所以有现成的测试串,可以直接拿来用,省去了很多麻烦。
  例如:
  一个1860的请求串为:
  <?xml version"1.0" encoding="GBK"?><operation_in type="struct">...<![CDATA[<?xml version="1.0" encoding="GBK"?><request type="struct">...<msisdn type="string">13333333333</msisdn>...</request>]]>...</operation_in>

  其中msisdn为用户的手机号码,其余的内容是1860的受理业务属性,那么我们可以在LR中写这样的脚本:
web_submit_data("test186",
"Action=http://1.1.1.1:8080/fcgi-bin/Test_186",
"Method=POST",
"RecContentType=text/html",
       "Referer=http://1.1.1.1:8080/fcgi-bin/Test_186",
       "Mode=HTML",
        ITEMDATA,
  "Name=1860","Value=<?xml version"1.0" encoding="GBK"?><operation_in type="struct">...<![CDATA[<?xml version="1.0" encoding="GBK"?><request type="struct">...<msisdn type="string">{Msisdn}</msisdn>...</request>]]>...</operation_in>",ENDITEM,
LAST);

  其中http://1.1.1.1:8080/fcgi-bin/Test_186为后台服务的请求地址,采用post方式发送数据,msisdn为参数,由LR的参数列表中传入。这时只要在参数列表中设置好要受理的手机号码,例如有100个号码,在run-time setting中设置要循环的次数100,那么很快就可以模拟出100个用户的受理情况了。当然受理业务的各个属性都可以参数化的。

作者: 冰清    时间: 2008-9-9 14:35
利用QTP也可以大量造数据,是需要在脚本当中写一个FOR循环语句就可以了。
作者: 冰清    时间: 2008-9-9 14:35
而且LR
作者: y_test    时间: 2008-9-9 15:00
不错支持一下
作者: blinkday    时间: 2008-9-9 15:43
原帖由 冰清 于 2008-9-9 14:35 发表
利用QTP也可以大量造数据,是需要在脚本当中写一个FOR循环语句就可以了。

LR应该更快,省略了一系列模拟用户录入操作




欢迎光临 51Testing软件测试论坛 (http://bbs.51testing.com/) Powered by Discuz! X3.2