一、为什么要手写脚本
1. 避免LR由于兼容性导致录制异常或失败;
2. 手写脚本无冗余代码,更有利于脚本的增强(插入事务、参数化)与维护
二、手动编写脚本使用编写语言
1. JAVA
2. C语言 【推荐】
提示:
1. Loadrunner中虽然默认是使用C语言录制/编写脚本,我们无需专业去学C语言;
2. 只需注意下基础语法和掌握LR中常用的几个请求函数的用法就可以编写常用的脚本。
三、脚本请求函数
1. web_url() GET请求 【掌握】
2. web_submit_data() POST请求 【掌握】
3. web_custom_request() 定制请求(GET\POST\PUT\DEL) 【了解】
提示:掌握 web_url、web_submit_data两个就好;
1、web_url() 函数 【重点】
说明:GET请求时使用;
语法:web_url("request name","URL=http://***",LAST);
1). request name:标记请求名称,比如:首页
2). URL=http://***:URL=为固定格式;http://***为GET请求地址
3). LAST结束标志;
2、web_submit_data()函数 【重点】
说明:POST请求专用;
语法:web_submit_data( StepName, Action=http://***, <List of Attributes>, ITEMDATA,
<List of data>, LAST );
1). StepName:标记请求名称, 比如:登录
2). Action=http://***:Action=固定格式;http://***:提交地址
3). List of Attributes:其他属性 如:"Method=POST"
4). List of data:其他参数 如:"username=jojo"
5). LAST:结束符
提示:
1. POST提交参数比较多,我们不用一个个记,使用插入函数方法,在函数对话框内输入;
2. 录制HTML页面时,Mode推荐使用HTML;
3、web_custom_request() 函数 【了解】
说明:自定义请求方法(GET/POST/PUT/DELETE)
语法:web_custom_request( RequestName, <List of Attributes>,LAST );
1). RequestName:请求名称
2). List of Attributes:属性列表,如:"Method=POST"
3). LAST:结束符
提示:以后在项目例设计其他请求方法时,有用;
四、练习
WebTours登录
Action()
{
//处理动态session
web_reg_save_param("Session",
"LB=name=userSession value=",
"RB=>",
LAST);
//打开webTours首页
web_url("首页","URL=http://127.0.0.1:1080/WebTours/",LAST);
//登录操作
web_submit_data("登录",
"Action=http://127.0.0.1:1080/WebTours/login.pl",
"Method=POST",
"TargetFrame=",
"Referer=",
"Mode=HTML",
ITEMDATA,
"Name=userSession", "Value={Session}", ENDITEM,
"Name=username", "Value=jojo", ENDITEM,
"Name=password", "Value=bean", ENDITEM,
LAST);
return 0;
}
注意:数据直接插入即可,不必手写!
步骤如下:
(1)代码区右击鼠标->插入->新建步骤->选择对应的函数
(2)对函数设置数据
(3)静态Session无法登录WebTours,因此需要使用动态Session
运行结果: