调用接口前需要先获取登陆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. 5238-整数校验器-洛谷3月赛gg祭

    传送门 题目描述 有些时候需要解决这样一类问题:判断一个数 x是否合法. x合法当且仅当其满足如下条件: x格式合法,一个格式合法的整数要么是 0,要么由一个可加可不加的负号,一个 1到 9 之间的数 ...

  2. spingMVC异步上传文件

    框架是个强大的东西,一般你能想到的,框架都会帮你做了,然后只需要会用就行了,spingmvc中有处理异步请求的机制,而且跟一般处理请求的方法差别不大,只是多了一个注解:spingmvc也可以将stri ...

  3. VMware中安装Centos 7

    1.点击“文件-新建”,如下图 2.选择"典型".下一步 3.选择”稍后安装操作系统”,下一步. 4.选择要安装的操作系统类型,下一步 5.填写虚拟机名称,设置虚拟机的存放位置,下 ...

  4. Item 25: 对右值引用使用std::move,对universal引用则使用std::forward

    本文翻译自<effective modern C++>,由于水平有限,故无法保证翻译完全正确,欢迎指出错误.谢谢! 博客已经迁移到这里啦 右值引用只能绑定那些有资格被move的对象上去.如 ...

  5. 学习用Node.js和Elasticsearch构建搜索引擎(4): 构建Elasticsearch搜索引擎

    一.目标 使用node搭建一个知识库检索系统,要求词条平均检索速度必须在1s以内. 二.思路. 本人思路如下图. 橙色部分为我们要开发的内容, ES服务搭建(暂时用单节点测试,集群搭建以后再说), 三 ...

  6. pycharm 中 import requests 报错

    一 , 使用Pycharm来抓取网页的时候,要导入requests模块,但是在pycharm中 import requests 报错. 原因: python中还没有安装requests库 解决办法: ...

  7. iOS开发之一句代码检测APP版本的更新

    提示更新效果图如下,当然也是可以自定义类似与AlertView相似的自定义view,如京东.网易云音乐都是自定义了这种提示框的view.以下只展示,从App Store获取到app信息.并解析app信 ...

  8. python中的Init方法, new 方法 call 方法

    new 方法实现单列模式思考 class Single: _single = None _single_only = None def __init__(self, value): self.v = ...

  9. Django 中的 cookie 和 session

    一.cookie 由于HTTP协议是无状态的,而服务器端的业务必须是要有状态的.Cookie诞生的最初目的是为了存储web中的状态信息,以方便服务器端使用.比如判断用户是否是第一次访问网站.目前最新的 ...

  10. python知识点及面试面试大集合

    题目来源:武sir--一个很有意思的人,点击这儿跳转 一.基础篇 为什么学习Python? 通过什么途径学习的Python? Python和Java.PHP.C.C#.C++等其他语言的对比? 简述解 ...