Loadrunner模拟Json请求转载

上一篇 / 下一篇  2013-07-23 13:29:36

Loadrunner模拟Json请求

一、loadrunner脚本创建

1.Insert - New step -选择Custom Request - web_custom_request

2.填入相应参数

3.生成脚本,并修改如下(参数中的引号"前需要加斜杠\转译)

Action()

{

web_custom_request("web_custom_request",

"URL=http://urlhead/CpcService.ashx?Method=checkXXXed",

"Method=POST",

"Resource=0",

"RecContentType=application/json",

"Referer=",

"Mode=HTTP",

"EncType=application/json",

"Body={\"user\":{\"uid\":\"C8-9C-DC-70-BD-B2\"}}",

LAST);

 

return 0;

}

 

4.捕获页面返回值

返回格式{"IsError":0,"ErrorMsg":"","user_tags":["0"]}

 

将光标移动到脚本顶部,插入关联点insert-new step-service-web_reg_save_param

在脚本顶部,插入并修改脚本如下

web_reg_save_param("user_tags",

"LB=user_tags\":[\"",

"RB=\"]}",

LAST);

 

在脚本尾部,加入输出日志验证是否获取成功

lr_message ("user_tags:%s", lr_eval_string("{user_tags}"));

 

5.对我们的接口做自动化功能测试,写验证脚本如下

if (atoi(lr_eval_string("{user_tags}"))==0)

lr_output_message("user_tags:%s,succeed!",(lr_eval_string("{user_tags}")));

else if(atoi(lr_eval_string("{user_tags}"))==1)

lr_output_message("user_tags:%s,failed!",(lr_eval_string("{user_tags}")));

else

lr_output_message("user_tags:%s,unknow!",(lr_eval_string("{user_tags}")));

 

6.参数化脚本,


运行脚本,重要日志输出如下:

Action.c(24): [C8-9C-DC-70-BD-B2]0,succeed!

Action.c(26): [C8-9C-DC-70-BD-B3]1,failed!

---------------------------------------END---------------------------------------

 

二、web_custom_requestweb_submit_data区别

web_custom_request方法可以发送POSTGET类型的请求

web_submit_data只能发送POST类型的请求

所有web_submit_data方法发送的请求都可以使用web_custom_request来实现

 

1. web_submit_data

请求中提交的数据格式:“Name=属性名称,”,“Value=属性值

例如

“Name=username”, “Value=12044″, ENDITEM,

如果我们想提交的某个属性包含包含多个值(比如说批量删除),它就无法处理了,只能通过多个web_submit_data来处理。

2. web_custom_request

提交的数据(body)格式:“Body=属性名称=属性值&属性名称=属性值&……”

例如:

 

3. web_custom_request函数详解

A.语法:

Int web_custom_request (const char *RequestName,

<List of Attributes>,

[EXTRARES, <List of Resource Attributes>,]

LAST );

 

B.返回值:返回LR_PASS0)代表成功,LR_FAIL1)代表失败。

 

C.参数:

(1)RequestName:步骤的名称,VuGen中树形视图中显示的名称。

(2)List of Attribute:属性列表,支持的属性有以下几种:

a.URL:页面地址。

b.Method:页面的提交方式,POSTGET

c.TargetFrame:当前链接或资源所在Frame的名称。

除了Frame的名字,还可以指定下面的参数:

_BLANK:打开一个空窗口。

_PARENT:把最新更改过的的Frame替换为它的上级。

_SELF:替换最新更改过的的Frame

_TOP:替换整个页面。

 

d.EncType:编码类型。

 


TAG:

Asia 引用 删除 张亚洲   /   2013-07-23 16:27:00
转过来了!会不会啊!
Asia 引用 删除 张亚洲   /   2013-07-23 16:26:37
5
 

评分:0

我来说两句

442871029

442871029

软件测试

我的栏目

日历

« 2022-09-21  
    123
45678910
11121314151617
18192021222324
252627282930 

数据统计

  • 访问量: 9898
  • 日志数: 2
  • 建立时间: 2013-04-11
  • 更新时间: 2013-07-23

RSS订阅

Open Toolbar