典型LoadRunner脚本
Action()
{
int rc = 0;
int cmp_result = 0;
char over_msg[] = "\"真遗憾,好心塞,手慢了一下,已经被人抢走了,再去看看别的吧\"";
char return_msg[100];
////恭喜,赶快到网络良好的地方去付款吧!手快有手慢无,30分钟内哦 web_reg_find("Text=\"status\":\"1\"",
"SaveCount=login_count",
LAST); web_reg_save_param_ex(
"ParamName=login_cookie_1",
"LB=Set-Cookie: ",
"RB=; Path=",
SEARCH_FILTERS,
"Scope=Headers",
"RequestUrl=*/agentlogin.do*",
LAST); lr_start_transaction("agentlogin"); web_submit_data("agentlogin",
"Action=http://172.16.10.125:8080/customer-app-web/appC/login/agentlogin.do",
"Method=GET",
"TargetFrame=",
"RecContentType=text/html",
"Referer=http://172.16.10.125:8080/customer-app-web/appC/login/agentlogin.do",
"Snapshot=t1.inf",
"Mode=HTML",
ITEMDATA,
"Name=phone","Value={phone}", ENDITEM,
"Name=userPass", "Value={password}", ENDITEM,
LAST); if(atoi(lr_eval_string("{login_count}"))==0)
{
lr_end_transaction("agentlogin", LR_FAIL);
}
else
{
lr_end_transaction("agentlogin", LR_PASS);
lr_output_message("login successfu! cookie value is: %s", lr_eval_string("{login_cookie_1}")); web_reg_find("Text=\"status\":\"1\"",
"SaveCount=buy_count",
LAST); web_reg_save_param_ex(
"ParamName=buy_result",
"LB=\"data\":",
"RB=}",
SEARCH_FILTERS,
"Scope=Body",
"RequestUrl=*/buyImmediately.do*",
LAST); lr_rendezvous("start_buy"); lr_start_transaction("buyImmediately"); web_submit_data("buyImmediately",
"Action=http://172.16.10.125:8080/customer-app-web/houses/buyImmediately.do",
"Method=GET",
"TargetFrame=",
"RecContentType=text/html",
"Referer=http://172.16.10.125:8080/customer-app-web/houses/buyImmediately.do",
"Snapshot=t1.inf",
"Mode=HTML",
ITEMDATA,
"Name=activityId","Value=21", ENDITEM,
"Name=Cookie","Value={login_cookie_1}", ENDITEM,
LAST); if(atoi(lr_eval_string("{buy_count}"))==0)
{
lr_end_transaction("buyImmediately", LR_FAIL);
}
else
{ rc = lr_convert_string_encoding(lr_eval_string("{buy_result}"), LR_ENC_UTF8, LR_ENC_SYSTEM_LOCALE, "returnstring");
if (rc == 0) {
//lr_output_message("convert result is: %d", rc); //lr_output_message("buy result is: %s", lr_eval_string("{returnstring}")); sprintf(return_msg, "%s", lr_eval_string("{returnstring}"));
//lr_output_message("save result is: %s", return_msg); cmp_result = strcmp(over_msg, return_msg);
if (cmp_result == 0) {
lr_end_transaction("buyImmediately", LR_FAIL);
}
else{
lr_end_transaction("buyImmediately", LR_PASS);
}
}
else{
lr_end_transaction("buyImmediately", LR_FAIL);
} } }
return 0;
}
典型LoadRunner脚本的更多相关文章
- LoadRunner脚本篇
LoadRunner脚本篇 1概述 2脚本录制 3脚本编写 4脚本调试 关 键 词:LoadRunner 性能测试脚本 摘 要:编写一个准确无误的脚本对性能测试有至关重要的意 ...
- LoadRunner脚本编写(转)
性能测试工程师要懂代码么?答案是必须的.好多测试员认为在loadrunner中编写脚本很难很牛X ,主要是大多测试人员并未做过开发工作,大学的那点程序基础也忘记的差不多了.还有非计算机专业出身的测试员 ...
- LoadRunner脚本实例来验证参数化的取值
LoadRunner脚本实例来验证参数化的取值 SINM {3]!G0问题提出: 主要想试验下,在Controller中,多个用户,多次迭代中参数的取值.51Testing软件测试网(['H5f,d ...
- Loadrunner脚本录制常见问题整理
1.LoadRunner录制脚本时为什么不弹出IE浏览器? 当一台主机上安装多个浏览器时,LoadRunner录制脚本经常遇到不能打开浏览器的情况,可以用下面的方法来解决. 启动浏览器,打开Inter ...
- LoadRunner脚本设计、场景设计和结果分析
本次笔记主要记录LoadRunner脚本设计.场景设计和结果分析 1. 脚本设计 录制模式 手工模式:插入步骤.手动编写 1.1 脚本增强: ...
- [转]LoadRunner脚本录制常见问题整理
LoadRunner脚本录制常见问题整理 1.LoadRunner录制脚本时为什么不弹出IE浏览器? 当一台主机上安装多个浏览器时,LoadRunner录制脚本经常遇到不能打开浏览器的情况,可以用下面 ...
- 关注LoadRunner脚本回放日志中的Warning信息-转载
关注LoadRunner脚本回放日志中的Warning信息 最近在与大家的讨论中发现了LoadRunner的很多问题,出于解决问题的出发点,我也就相关自己不理解的问题在Google中搜索了一番,并 ...
- 转:如何在 LoadRunner 脚本中做关联 (Correlation)
如何在 LoadRunner 脚本中做关联 (Correlation) 当录制脚本时,VuGen会拦截client端(浏览器)与server端(网站服务器)之间的对话,并且通通记录下来,产生脚本.在V ...
- 老李分享:Eclipse中开发性能测试loadrunner脚本
老李分享:Eclipse中开发性能测试loadrunner脚本 前篇我分享了如何用loadrunner搭建javauser的性能测试脚本环境,本次我来告诉大家如何在eclipse开发loadrunne ...
随机推荐
- [HDOJ3367]Pseudoforest(并查集,贪心)
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=3367 求一个无向图上权值最大的伪森林. 伪森林:一个图的连通子图,当且仅当这个子图有且仅有一个环. 既 ...
- gulp自动刷新插件
gulp自动刷新的插件很多,但是感觉最好用的还是 browser-sync 插件.如果不想用命令行,也可以使用 browser-sync界面工具 先安装 browser-sync 插件: npm in ...
- POJ 3233 矩阵乘法
题意:求解A+A^2+...+A^k 题解: 1)利用通和公式,原式=(A^k+1 - A)(A - O)^-1 时间复杂度O(n^3lgk) 2)递归求解,A+A^2+...+A^k=(A+A^2+ ...
- C#中跨线程读取控件值、设置控件值
编写应用程序时,涉及到大量数据处理.串口通信.Socket通信等都会用到多线程,多线程中如何跨线程调用主界面或其他界面下的控件是一个问题,利用invoke和delegate可以解决. delegate ...
- fancybox 无效 失效 直接打开页面, ajax 之后 fancybox对更新的数据无效,Jquery失效 无效
案例:做个聊天室项目,数据都是通过ajax刷新出来的,而对新数据绑定的fancybox均无效,点击直接打开到了新页面而不是弹窗,解决方法其实很简单 简单分析:ajax加载内容是在$(documen ...
- PhoneGap 安装体验
npm -v #显示版本,检查npm 是否正确安装. npm install express #安装express模块 npm install -g express #加上 -g 启用global安装 ...
- ORACLE RAC 监听配置 (listener.ora tnsnames.ora)
Oracle RAC 监听器的配置与单实例稍有不同,但原理和实现方法基本上是相同的.在Oracle中 tns进程用于为指定网络地址上的一个或多个Oracle 实例提供服务注册,并响应来自客户端对该服务 ...
- 【转载】图论 500题——主要为hdu/poj/zoj
转自——http://blog.csdn.net/qwe20060514/article/details/8112550 =============================以下是最小生成树+并 ...
- C#中常见的winform控件命名规范
我们知道Button 常常简称为btn,那么Winform中的其它控件呢,这篇文章在C#的winform控件命名规范 的基础上对一些控件的名称的简称进行了整理. 1. 标准控件 NO. 控件类型简写 ...
- java中的getClass()函数
Java反射学习 所谓反射,可以理解为在运行时期获取对象类型信息的操作.传统的编程方法要求程序员在编译阶段决定使用的类型,但是在反射的帮助下,编程人员可以动态获取这些信息,从而编写更加具有可移植性的代 ...