Action()
{

//1、设置服务器的IP地址
//lr_save_string("192.168.1.12:8080", "ip");
lr_save_string("192.168.1.13:8080","ip");

//2、访问登录首页面
web_url("当当网",
"URL=http://{ip}/project",
"TargetFrame=",
"Resource=0",
"RecContentType=text/html",
"Referer=",
"Snapshot=t1.inf",
"Mode=HTML",
LAST);

//停顿2秒
lr_think_time(2);

//3、转到登录页面
web_url("登录页面",
"URL=http://{ip}/project/user/tologinAction",
"TargetFrame=",
"Resource=0",
"RecContentType=text/html",
"Referer=http://{ip}/project/",
"Snapshot=t2.inf",
"Mode=HTML",
LAST);

//停顿2秒
lr_think_time(2);

lr_start_transaction("提交登录信息");

//4、提交登录信息
web_submit_data("提交登录",
"Action=http://{ip}/project/user/login",
"Method=POST",
"TargetFrame=",
"RecContentType=text/html",
"Referer=http://{ip}/project/user/tologinAction",
"Snapshot=t3.inf",
"Mode=HTML",
"EncodeAtSign=YES",
ITEMDATA,
"Name=user.email", "Value={userName}@project.com", ENDITEM,
"Name=user.password", "Value=123123", ENDITEM,
"Name=uri", "Value=", ENDITEM,
LAST);

lr_end_transaction("提交登录信息", LR_AUTO);

//停顿2秒
lr_think_time(2);
lr_start_transaction("浏览要购买的书籍");

//5、浏览要购买的书籍
web_url("书名:",
"URL=http://{ip}/project/main/book_view?id={bookId}",
"TargetFrame=",
"Resource=0",
"RecContentType=text/html",
"Referer=http://{ip}/project/main/mainAction",
"Snapshot=t4.inf",
"Mode=HTML",
LAST);

lr_end_transaction("浏览要购买的书籍", LR_AUTO);

//停顿2秒
lr_think_time(2);
lr_start_transaction("进入书籍详情信息");

//6、进入书籍详情信息
web_url("书籍详情",
"URL=http://{ip}/project/cart/cartBuy?id={bookId}",
"TargetFrame=",
"Resource=0",
"RecContentType=application/json",
"Referer=http://{ip}/project/main/book_view?id={bookId}",
"Snapshot=t5.inf",
"Mode=HTML",
LAST);

lr_end_transaction("进入书籍详情信息", LR_AUTO);

//停顿2秒
lr_think_time(2);
lr_start_transaction("查看购物车信息");

//7、查看购物车信息
web_url("购物车信息",
"URL=http://{ip}/project/cart/cart",
"TargetFrame=",
"Resource=0",
"RecContentType=text/html",
"Referer=http://{ip}/project/main/book_view?id={bookId}",
"Snapshot=t6.inf",
"Mode=HTML",
LAST);

lr_end_transaction("查看购物车信息", LR_AUTO);

//停顿2秒
lr_think_time(2);

lr_start_transaction("结算");

//8、结算
web_url("结算",
"URL=http://{ip}/project/order/confirm",
"TargetFrame=",
"Resource=0",
"RecContentType=text/html",
"Referer=http://{ip}/project/cart/cart",
"Snapshot=t7.inf",
"Mode=HTML",
LAST);
lr_end_transaction("结算", LR_AUTO);

//9-1、设置html支持的字符长度为1024
web_set_max_html_param_len("1024");

//9-2、设置关联,获取令牌的名字
web_reg_save_param("tokenName",
"LB=name=\"struts.token.name\" value=\"",
"RB=\" \/>",
LAST);

//9-3、设置关联,获取令牌的值
web_reg_save_param("token",
"LB=name=\"struts.token\" value=\"",
"RB=\" \/>",
LAST);

//9-4、设置关联,获取地址编号
web_reg_save_param("addressId",
"LB=id=\"addressId\" value=\"",
"RB=\"\/>",
LAST);

//停顿2秒
lr_think_time(2);
lr_start_transaction("选择收货地址");

//10、选择收货地址
web_url("选择收货地址",
"URL=http://{ip}/project/order/addressForm",
"TargetFrame=",
"Resource=0",
"RecContentType=text/html",
"Referer=http://{ip}/project/order/confirm",
"Snapshot=t8.inf",
"Mode=HTML",
LAST);

lr_end_transaction("选择收货地址", LR_AUTO);

//停顿2秒
lr_think_time(2);
lr_start_transaction("确定收货地址");

//11、确定收货地址
web_custom_request("确定收货地址",
"URL=http://{ip}/project/order/address",
"Method=POST",
"TargetFrame=",
"Resource=0",
"RecContentType=application/json",
"Referer=http://{ip}/project/order/addressForm",
"Snapshot=t9.inf",
"Mode=HTML",
"EncType=",
LAST);

lr_end_transaction("确定收货地址", LR_AUTO);

//停顿2秒
lr_think_time(2);
lr_start_transaction("提交订单信息");

//12、提交订单信息
web_submit_data("提交订单",
"Action=http://{ip}/project/order/orderSubmit",
"Method=POST",
"TargetFrame=",
"RecContentType=text/html",
"Referer=http://{ip}/project/order/addressForm",
"Snapshot=t10.inf",
"Mode=HTML",
ITEMDATA,
"Name=struts.token.name", "Value={tokenName}", ENDITEM,
"Name=struts.token", "Value={token}", ENDITEM,
"Name=addr.id", "Value={addressId}", ENDITEM,
"Name=addr.receive_name", "Value=书籍1", ENDITEM,
"Name=addr.full_address", "Value=书籍2", ENDITEM,
"Name=addr.postal_code", "Value=123123", ENDITEM,
"Name=addr.phone", "Value=", ENDITEM,
"Name=addr.mobile", "Value=13800138000", ENDITEM,
"Name=submit", "Value=下一步", ENDITEM,
LAST);

lr_end_transaction("提交订单信息", LR_AUTO);

return 0;
}

LR中订单流程脚本2的更多相关文章

  1. LR中订单流程脚本

    Action(){ /* 主流程:登录->下订单->支付订单->获取订单列表 定义事物 1)登录 2)下订单 3)支付订单 4)获取订单列表 接口为:application/json ...

  2. LR性能测试分析流程

    LR性能测试分析流程 一.     判断测试结果的有效性 (1)在整个测试场景的执行过程中,测试环境是否正常. (2)测试场景的设置是否正确.合理. (3)测试结果是否直接暴露出系统的一些问题. (4 ...

  3. LR中的时间戳函数web_save_timestamp_param

    以前真没注意过后面看某个群有人说到这个函数一查,还真有,那么处理时间戳就简单很多了,我们经常在各种网站上看到类似于这样的时间戳 51Testing软件测试网"d bLq!uR&am ...

  4. 第二十三篇:在SOUI中使用LUA脚本开发界面

    像写网页一样做客户端界面可能是很多客户端开发的理想. 做好一个可以实现和用户交互的动态网页应该包含两个部分:使用html做网页的布局,使用脚本如vbscript,javascript做用户交互的逻辑. ...

  5. 关于LR中的EXTRARES

    LoadRunner脚本之EXTRARES参数 EXTRARES:分隔符,表示标记下一个属性是资源属性的列表(list of resource attributes). [EXTRARES后的资源是由 ...

  6. LR中的C语言问题

    今天在调试LR的脚本(C)时遇到了几个甚是头痛得问题,下面简单总结下: 1.首先LR中的C编译器遵循C90标准,规定在一个函数中,变量定义必须放在所有的执行语句之前!一旦在运行语句之间再有定义的话,会 ...

  7. LR中的编码问题

    [转载]LoadRunner字符集与检查点的探讨 很多人在loadrunner测试脚本中加入中文检查点的时候会出现检查失败的情况,究竟是为什么呢?其实是被测试系统与loadrunner字符集之间的转换 ...

  8. LR中日志设置和日志函数

    LR中日志参数的设置与使用 1.Run-Time Setting日志参数的设置 在loadrunner的vuser菜单下的Run-Time Setting的General的LOG选项中可以对在执行脚本 ...

  9. LR中HTTP协议录制模式选择

    在LR中使用HTML/HTTP协议进行脚本录制时面临正确选择HTTP-based script / URL-base script 录制模式的问题,以下是比较官方的建议:1)基于浏览器的应用程序推荐使 ...

随机推荐

  1. staruml详解

    一.用例图   1.说明        1.1  用例图说明的事谁要使用系统以及他们使用该系统可以做些什么?  <业务需求>        1.2  解析一个用例图,我们可以发现它包含4个 ...

  2. 菜鸟-@responsebody 理解-用法

    @responsebody表示该方法的返回结果直接写入HTTP response body中一般在异步获取数据时使用,在使用@RequestMapping后,返回值通常解析为跳转路径,加上@respo ...

  3. flex(1)

    flex使用的actionscript语言遵守ECMA-262标准,这与javascript语言是一致的,由此可见二者语法的相似.

  4. Inside Geometry Instancing(下)

    Inside Geometry Instancing(下) http://blog.csdn.net/soilwork/article/details/655858 此教程版权归我所有,仅供个人学习使 ...

  5. jzoj5987. 【WC2019模拟2019.1.4】仙人掌毒题 (树链剖分+概率期望+容斥)

    题面 题解 又一道全场切的题目我连题目都没看懂--细节真多-- 先考虑怎么维护仙人掌.在线可以用LCT,或者像我代码里先离线,并按时间求出一棵最小生成树(或者一个森林),然后树链剖分.如果一条边不是生 ...

  6. rsync 同步的艺术

    rsync是类unix系统下的数据镜像备份工具,可以提供快速的增量文件传输. rsync 也可用于本机传输,如: # rsync -v mysql--linux-glibc2.-x86_64.tar. ...

  7. 详解Codis安装与部署

    Codis github上的介绍安装,里面很全,而且也有中/英文的,只不过按照github的步骤安装,会有一些坑,所以有了这么一篇文章. 在上一篇文章<Redis实用监控工具一览>中,介绍 ...

  8. github 收藏项目的方法

    1,Watching 需要收藏的项目 2,查看收藏的项目

  9. java中代码执行顺序

    静态代码块 -- >构造代码块 --> 构造方法静态代码块:只执行一次构造代码块:每次调用构造方法都执行 http://blog.csdn.net/wuhaiwei002/article/ ...

  10. 096 Unique Binary Search Trees 不同的二叉查找树

    给出 n,问由 1...n 为节点组成的不同的二叉查找树有多少种?例如,给出 n = 3,则有 5 种不同形态的二叉查找树:   1         3     3      2      1    ...