如何用LoadRunner模拟PDA向服务器发送数据(1)-编写LoadRunner脚本

上一篇 / 下一篇  2009-06-12 12:37:50 / 个人分类:LoadRunner学习

1.1脚本功能介绍

本脚本实现了模拟1PDA想服务端发送信息。

如果要实现多台PDA并发,需要做以下事情:

1.      分析消息。

特别要注意的是,新增记录与编辑记录的消息是有很大不同的。

构造新增记录消息时,必须构造记录UUID(此UUID是经过base64编码的)、消息UUID(此UUID没有被编码);

构造编辑记录消息时,必须构造消息UUID,记录UUID不变。

有的PDA操作,一次操作会产生多条消息(如转入转出),模拟此操作时也要特别注意。

2.      构造数据

构造PdA消息数据方法见二、构造数据。

消息中的UUID是没有“-”的,而SQL中生成的UUID是有“-”的,因此,在构造数据时,要注意删除“-”。                                                   

3.      LoadRunner脚本中的消息数据进行参数化,并指定参数的取值方法。

 需要参数化的数据有msgUUID(必须)

 新增记录的话还要参数化记录的UUiD

 如果模拟不同用户的话,要参数化USN(即用户的UUID,用户的UUID从表PDA_userinfo中可以获取).

4.      创建场景,运行场景。

1.2如何创建PDA消息

LoadRunner脚本的“Body中,双引号前要用转义符,其他不用。

Body中的信息的格式,其实可以从服务器端的apusic窗口中截,方法如下(以新增子项为例:

1.PDA新增一个子女信息。上传。

2.从服务端的apusic窗口中截取上传信息。

3.对截取的信息进行分析,修改。一般需要修改msgUUID,新增子项的话还要修改子项的uuid

4.将修改后的消息贴到脚本中,运行即可。

 

1.3脚本

    web_reg_save_param("flag",

             "LB=FLAG:",

             "RB=",

             "SaveLen=1",

             "RelFrameId=1",

             LAST);

 

      web_custom_request("upload.do",

             "URL=http://192.168.1.15:888/upload.do",

             "Method=POST",

             "TargetFrame=",

             "Resource=0",

             "Referer=",

             "Body=<root><usn>{PDA_UserInfo}</usn><msg uuid=\"{msgUUID}\"><cmd>SAV_CHILD(Kin|LTk5OQ==;ID|NDUzODgw;BirthPlace|LTk5OQ==;FamilyUUID|{FamilyUUID};Modifier|eWhfaGht;FamilyID|{FamilyID};IsOnline|MA==;OperID|MA==;ModifyDate|MjAwOS0wNi0xMCAwOTo1MTowOA==;Policy|MQ==;Remark|;Birthday|MjAwOS0wNi0xMCAwMDowMDowMA==;BornCardNo|;ChangeType|QWRk;ChildOrder|Mg==;UUID|{UUID};HealthState|MQ==;Sex|Mg==;CreDate|MjAwOS0wNi0xMCAwMDowMDowMA==)</cmd></msg></root>",

             LAST);

 

       lr_output_message("%s", lr_eval_string("{flag}"));

    if(atoi(lr_eval_string("{flag}"))!=1) lr_abort();

 

      return 0;                

}

 

 

脚本说明:新增计生子女信息,对msgUUID、子女的UUID进行了参数化。

Body脚本段换行:直接回车换行,行首行尾加双引号既可。

c语言的“\”换行也可以,但是如果在cmd中使用“\”,会导致cmd中出现空格(除非换行后语句靠最左,但是这样语句不整齐)。

 


TAG:

 

评分:0

我来说两句

Open Toolbar