编写前程贷投标loadrunner脚本及总结
1、完成前程贷的(登录,投标)
2、所有的返回信息都用关联函数(web_reg_save_param_ex)进行关联
3、对返回信息用(strcmp)函数进行if判断
4、总结(web_reg_save_param和web_reg_save_param_ex)区别
Action()
{
web_reg_save_param_ex(
"ParamName=success01",
"LB=class=\"success\">",
"RB=</p>",
"Ordinal=1",
SEARCH_FILTERS,
"Scope=ALL",
LAST);
//
//登录
lr_start_transaction("登录");
web_submit_data("web_submit_data",
"Action=http://120.78.128.25:8765/Frontend/Index/login",
"Method=POST",
"TargetFrame=",
"Referer=http://120.78.128.25:8765/Index/login.html",
ITEMDATA,
"Name=phone", "Value=13825161923", ENDITEM,
"Name=password", "Value=lemon123", ENDITEM,
"Name=remember_me", "Value=1", ENDITEM,
LAST);
lr_end_transaction("登录", LR_AUTO);
lr_error_message("cg---:%s",lr_eval_string("{success01}"));
// //获取投标id
web_reg_save_param_ex(
"ParamName=get_id",
"LB=href=\"/loan/loan_detail/Id/",
"RB=.html",
"Ordinal=1",
SEARCH_FILTERS,
"Scope=ALL",
LAST);
//获取账号名
web_reg_save_param_ex(
"ParamName=get_username",
"LB=>我的帐户[",
"RB=]</a>",
"Ordinal=1",
SEARCH_FILTERS,
"Scope=ALL",
LAST);
//首页
web_url("web_url",
"URL=http://120.78.128.25:8765/Index/index.html",
"TargetFrame=",
"Resource=0",
"Referer=",
"Mode=HTML",
LAST);
lr_error_message("投标id:%s",lr_eval_string("{get_id}"));
lr_error_message("投标用户:%s",lr_eval_string("{get_username}"));
//获取token
web_reg_save_param_ex(
"ParamName=get_token",
"LB=data-token=\"",
"RB==\" data-id=",
"Ordinal=1",
SEARCH_FILTERS,
"Scope=ALL",
LAST);
//产生token
web_url("web_url",
"URL=http://120.78.128.25:8765/loan/loan_detail/Id/{get_id}.html",
"TargetFrame=",
"Resource=0",
"Referer=",
"Mode=HTML",
LAST);
lr_error_message("投标token:%s",lr_eval_string("{get_token}"));
//获取投标返回值
web_reg_save_param_ex(
"ParamName=get_code",
"LB={\"state\":",
"RB=,\"msg\":",
"Ordinal=1",
SEARCH_FILTERS,
"Scope=ALL",
LAST);
lr_start_transaction("投标");
web_submit_data("web_submit_data",
"Action=http://120.78.128.25:8765/Invest/invest",
"Method=POST",
"TargetFrame=",
"Referer=",
"Mode=HTML",
ITEMDATA,
"Name=id", "Value={get_id}", ENDITEM,
"Name=val", "Value=100", ENDITEM,
"Name=token", "Value={get_token}", ENDITEM,
"Name=rewardValue", "Value=0", ENDITEM,
LAST);
//对strcmp函数的运用
if(strcmp(lr_eval_string("{get_code}"),"1")==0)
{
lr_end_transaction("投标", LR_PASS);
lr_error_message("投标成功!:%s,用户名:%s,投标id:%s",lr_eval_string("{get_code}"),lr_eval_string("{get_username}"),lr_eval_string("{get_id}")); //每个占位符与后面每个参数对应
}
else{
lr_end_transaction("投标", LR_FAIL);
lr_error_message("投标失败!!:%s",lr_eval_string("{get_code}"));
}
return 0;
}
5、预习(lr_save_string,web_custom_request)函数和参数化
1)int lr_save_string (const char *param_value, const char *param_name);
函数目的:将param_value值保存到param_name变量中
参数介绍:param_value:要保存的值
param_name: 变量名称
例子:
lr_save_string("10","test"); //将常量10保存为参数test
lr_output_message(lr_eval_string("{test}")); //获取并输出参数的当前值
执行结果:10
2)
Int web_custom_request (const char *RequestName, <List of Attributes>, [EXTRARES, <List of Resource Attributes>,] LAST );
返回值
返回 LR_PASS(0)代表成功,LR_FAIL(1)代表失败。参数:
RequestName:步骤的名称,VuGen 中树形视图中显示的名称。
List of Attribute:支持的属性有以下几种:
URL:页面地址。
Method :页面的提交方式,POST 或 GET。
TargetFrame:包含当前链接或资源的 frame 的名称。参见 List of Attributes
的同名参数。
EncType:编码类型。
RecContentType:响应头的内容类型。参见 List of Attributes 的同名参数。
Referer:参见 List of Attributes 的同名参数。
Body:请求体。参见 List of Attributes 的同名参数。
RAW BODY:参见 List of Attributes 的同名参数。
BodyFilePath:作为请求体传送的文件的路径。它不能与下面的属性一起使用: Body,或者其他 Body 属性或 Raw Body 属性包括 BodyBinary,BodyUnicode,
RAW_BODY_START 或 Binary=1。
Resource、ResourceByteLimit、Snapshot、Mode:参见 List of Attributes
的同名参数。
ExtraResBaseDir:参见 List of Attributes 的同名参数。
UserAgent:用户代理,它是一个 HTTP 头的名字,用来标识应用程序,通常是浏览器,它呈现的是用户和服务器的交互。
编写前程贷投标loadrunner脚本及总结的更多相关文章
- 手动编写一个简单的loadrunner脚本
loadrunner除了自动录制脚本外,还可以手动编写脚本,通过右键+inset step添加步骤,还可以手动添加事务,集合点等 下面是一个简单的Action脚本,服务是运行在本机的flask服务: ...
- LoadRunner脚本编写(转)
性能测试工程师要懂代码么?答案是必须的.好多测试员认为在loadrunner中编写脚本很难很牛X ,主要是大多测试人员并未做过开发工作,大学的那点程序基础也忘记的差不多了.还有非计算机专业出身的测试员 ...
- Loadrunner与idea编写加密的java Vusers脚本总结
Loadrunner与idea编写加密的java Vusers脚本总结 准备工作: jdk版本的选择: Loadrunner11 使用版本jdk1.6 32位(如果使用1.7的Load ...
- loadrunner脚本编写经验
最近写了不少loadrunner脚本,记录一下心得:1 loadrunner脚本基本可以认为就是c语言代码(loadrunner支持不同语言的脚本,默认生成的是用c语言写的脚本)2 loadrunne ...
- LoadRunner脚本编写
性能測试project师要懂代码么?答案是必须的.好多測试员觉得在loadrunner中编写脚本非常难非常牛X ,主要是大多測试人员并未做过开发工作,大学的那点程序基础也忘记的几乎相同了. 还有非计算 ...
- LoadRunner脚本编写之三(事务函数)
LoadRunner脚本编写之三(事务函数) 关于脚本的这块,前两篇都在讲C语言,其实,要整理点实用的东西挺难,在应用中多对录制的脚本分析,但对于新手学脚本确实无从下手. 先贴一个脚本: 完整代码: ...
- LoadRunner脚本编写之二
LoadRunner脚本编写之二 编程基本语法必须要记牢.程序的思想也很重要. 下面来回顾一下嵌套循环例子. Action() { int i,j; //生命两个变量 for ( ...
- LoadRunner脚本编写之一
LoadRunner脚本编写之一 性能测试工程师要懂代码么?答案是必须的.好多测试员认为在loadrunner中编写脚本很难很牛X ,主要是大多测试人员并未做过开发工作,大学的那点程序基础也忘记的差不 ...
- LoadRunner脚本编写(5)-- 检查点,关联等函数
LoadRunner脚本编写(5)-- 检查点,关联等函数 http://www.51testing.com/?34866/action_viewspace_itemid_70224.html来继续翻 ...
随机推荐
- M2阶段事后总结
设想和目标 1. 我们的软件要解决什么问题?是否定义得很清楚?是否对典型用户和典型场景有清晰的描述?我们的主要任务是将35w+个符合条件的网页,问答,文章放入数据库:爬取功能定义为以下几种:通用型爬取 ...
- 第二次sprint
一.这次冲刺就是实施阶段了,主要对程序进行一次骨架的构建,基本上已经完成了界面的设计,但是在算法上还有很大漏洞,整个程序还是属于不成熟阶段. 二.这是我们的界面 三.已经有的功能:随机生成题目并算出答 ...
- "留拍"-注册/登录详解
1. 注册 打开 “留拍” 软件,进入 主页面 ,然后按 注册 按钮: 在注册页面什么内容 都没有写 上去的情况下,按 完成 按钮: 首先把URL封装起来: public class URL { pu ...
- HDOJ2004_成绩转换
水题:用数组标识各个阶段分数的等级即可. HDOJ2004_成绩转换 #include<stdio.h> #include<stdlib.h> #include<math ...
- ajax跨域请求数据
最近开始接触ajax的跨域请求问题,相比网上说的一大堆,我这里就说得比较浅显了. 关于为什么要跨域这个问题,实际的需求是当网站项目部署在一个域名上的时候,分域可以很好地解决网站卡顿问题(拥有多台服务器 ...
- 全新OCR3500数据
改装: 手变6700,夹器彦豪R741,牙盘5700,前拨5700,后拨5701,飞轮5700,链条YBN S10 S2,弯把DEDA RHM01,前叉山寨BIANCHI K-VID,轮组FULCRU ...
- CentOS 关闭烦人的屏保
1. VNC连接到服务器 2.打开 system tools - settings 在power处 将 Power Saving 设置改一下
- [自学]Docker system 命令 查看docker镜像磁盘占用情况 Docker volume 相关
内容From https://docs.docker.com/engine/reference/commandline/system_df/ docker的image和docker的container ...
- 深入理解 Laravel 中 config 配置加载原理
Laravel的配置加载其实就是加载config目录下所有文件配置.如何过使用php artisan config:cache则会把加载的配置合并到一个配置文件中,下次请求就不会再去加载config目 ...
- Bootstrap @Media分类
手机的屏幕比较小,宽度通常在600像素以下:PC的屏幕宽度,一般都在1000像素以上(目前主流宽度是1366×768)设置相应的min-width和max-width值 所以响应式设计一般对600 ...