调用接口前需要先获取登陆token,放入消息头中。

 /*
* LoadRunner Java script. (Build: 3020)
*
* Script Description: 接口性能测试脚本 07-查询用户新增金币数
*
*/ import lrapi.lr;
import lrapi.web; public class Actions{ public int init() throws Throwable {
// 检查点
web.reg_find("Text=\"retCode\":\"0000\"",new String[]{"FAIL=NOTFOUND","SaveCount=StatusCount","LAST"}); // 关联参数
web.reg_save_param("token",
new String []{
"NOTFOUND=ERROR",
"LB=loginToken\":\"",
"RB=\",",
"Search=Body",
"LAST"}); lr.think_time(0.2);
// 事务开始点
lr.start_transaction("获取LoginToken的事务");
// web.set_sockets_option("SSL_VERSION","TLS"); // 接口调用
web.custom_request("getLoginToken",
"METHOD=POST",
new String[]{"URL=http://10.15.1.19/arowanaintl/user/loginByPass",
// "Body={\"channelId\"=\"autotest\",\"clientId\"=\"1\"}",
"Body=channelId=autotest&clientId=1&phone=0825500100&pass=bfe7c8de45faf6042b42d371f52640ba",
"LAST"}); // lr.output_message(lr.eval_string("{token}")); // 判断接口返回是否查询成功
if(lr.eval_int("{StatusCount}")==1){
// lr.output_message("接口返回成功!");
lr.end_transaction("获取LoginToken的事务", lr.PASS); }
else{
lr.end_transaction("获取LoginToken的事务", lr.FAIL);
lr.error_message("接口返回失败!");
return 1;
} // lr.output_message(lr.eval_string("{token}"));
return 0;
}//end of init public int action() throws Throwable { // 检查点
web.reg_find("Text=\"retCode\":\"0000\"",new String[]{"FAIL=NOTFOUND","SaveCount=StatusCount2","LAST"}); lr.think_time(0.2);
// 事务开始点
lr.start_transaction("接口调用事务");
// web.set_sockets_option("SSL_VERSION","TLS"); //加消息头
web.add_header("loginToken",lr.eval_string("{token}")); // 接口调用
web.custom_request("07-queryUserIncreaseGolds",
"METHOD=POST",
new String[]{"URL=http://10.15.1.19/arowanaintl/gold/queryUserIncreaseGolds",
// "Body={\"channelId\"=\"autotest\",\"clientId\"=\"1\"}",
"Body=channelId=autotest&clientId=123456&uid=88192b97-9b18-4e28-9dce-f9e9bb3f3bd1",
"LAST"});
// // 判断接口返回是否查询成功
if(lr.eval_int("{StatusCount2}")==1){
// lr.output_message("接口返回成功!");
lr.end_transaction("接口调用事务", lr.PASS); }
else{
lr.end_transaction("接口调用事务", lr.FAIL);
lr.error_message("接口返回失败!");
} return 0;
}//end of action public int end() throws Throwable {
return 0;
}//end of end
}

LoadRunner Vuser测试脚本添加前置条件举例的更多相关文章

  1. Loadrunner开发测试脚本

    Loadrunner开发测试脚本 开发测试脚本可以通过录制,也可以手动开发,建议能录制的尽量录制,省时省力,不能录制的只能费力自己开发了,具体看项目情况来决定. 使用Loadrunner开发脚本过程中 ...

  2. LoadRunner Vuser接口测试脚本 Post举例

    发送内容为JSON的POST请求需要加入"EncType=application/json",表单参数不需要.(JAVA API) // POST接口调用 web.custom_r ...

  3. loadrunner创建测试脚本运行无响应 不记录脚本

    解决一运行User Generator直接程序卡死无响应的办法. (1)“我的电脑”点右键->属性->高级 点选“性能”中的“设置” (2)打开对话框后,进入“数据执行保护”,如果空白框中 ...

  4. (转载)loadrunner简单使用——HTTP,WebService,Socket压力测试脚本编写

    原文出处:http://ajita.iteye.com/blog/1728243/ 先说明一下,本人是开发,对测试不是特别熟悉,但因工作的需要,也做过一些性能测试方面的东西.比较久之前很简单的用过,最 ...

  5. Loadrunner 脚本开发-利用Loadrunner生成Web service测试脚本

    脚本开发-利用Loadrunner生成Web service测试脚本 1.选择协议--Web Service,如下图 2.导入服务 入口1:点击Manage Services ->弹出窗中选择“ ...

  6. myeclipse调用loadrunner函数开发测试脚本

    myeclipse调用loadrunner函数开发测试脚本 一.使用myeclipse开发性能测试脚本 1.使用Eclipse新建一个Java工程,将目录%LoadRunner_Home%\class ...

  7. LoadRunner压力测试实例

    1 LoadRunner 概要介绍... 2 .项目背景介绍... 5 .使用LoadRunner进行负载/ 实施测试... 16 6.1 Memory相关... 22 6.2 Processor相关 ...

  8. LoadRunner压力测试实际运用的使用方法

    LoadRunner 是一种预测系统行为和性能的工业标准级负载测试工具.通过以模拟上 千万用户实施并发负载及实时性能监测的方式来确认和查找问题,LoadRunner 能够对整个 企业架构进行测试. 方 ...

  9. 【LR】录制测试脚本中的基本菜单

    学习来源: MBoo,小强老师性能测试及Loadrunner培训  ——录制测试脚本: 1.Vuser -> run-time settings ->General Run Logic : ...

随机推荐

  1. Spring Security(十四):5.4 Authorize Requests

    Our examples have only required users to be authenticated and have done so for every URL in our appl ...

  2. Debug Hacks中文版——深入调试的技术和工具

    关键词:gdb.strace.kprobe.uprobe.objdump.meminfo.valgrind.backtrace等. <Debugs Hacks中文版——深入调试的技术和工具> ...

  3. redis底层设计(四)——功能的实现

    redis中我们会经常用到事务.订阅与发布.Lua脚本以及慢查询日志,接下来我们就一一对他们进行探讨学习. 4.1事务 redis通过MULTI.DISCARD.EXEC和WATCH四个命令来实现事务 ...

  4. Luogu P3321 [SDOI2015]序列统计

    一道不错的多项式好题.还涉及了一些数论内容. 首先我们看到题目是求乘积模\(m\)的方案数,考虑到这种方案数我们一般都可以用生成函数来做. 但显然卷积的下标有加(FFT,NTT等)有位运算(FWT)但 ...

  5. UVA10256 The Great Divide

    怎么又没人写题解,那我来贡献一发好了. 题目意思很简单,平面上有两种颜色的点,问你能否求出一条直线使两种颜色的点完全分开. 首先我们考虑两个点集相离的充要条件,这两个点集的凸包必须相离.(很好证明或者 ...

  6. HTML5事件

    Html5事件 contextmenu事件 用以表示何时应该显示上下文菜单,以便开发人员取消默认的上下文菜单而提供自定义的菜单. 由于此事件时冒泡的,因此可以为document指定一个事件处理程序,用 ...

  7. Maven项目远程部署到Tomcat

    目录 Maven项目远程部署到Tomcat 一.Tomcat插件支持的目标 二.系统要求及插件引入 2.1 系统要求 2.2 引入插件 三.远程部署war到tomcat 3.1 添加tomcat管理角 ...

  8. Rimworld单人生存记

    开局什么也没有,第一天按原来的墙造了个卧室差不多就完了,可见工作效率之低.花了三四天才种好水稻+草莓,做了短弓,挖了一些钢铁,造了燃料炉灶和屠宰台.第五天来了个人,我用短弓和他打,问题是远程最多打一下 ...

  9. 多路选择器实现总线结构——Verilog

    ////////////////////////////////////////////////////////////////////////////////// //该程序完成通过多路选择器MUX ...

  10. mybatis的mapper注入失败

    因为处在两个不同的资源文件夹下: 导致classpath无法加载其中一些文件,所以修改为classpath*后顺利进行. <!-- 加载spring容器 --> <!-- neede ...