调用接口前需要先获取登陆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. [教程]教你如何制作彩色的3D打印Groot

    http://mc.dfrobot.com.cn/forum.php?mod=viewthread&tid=24916 准备工作: <ignore_js_op>  3D打印高精度G ...

  2. node.js之Cookie

    最近还是用node.js比较多,今天正好遇见一个问题,还是关于Cookie. node.js中如何实现cookie(以express框架为例): "use strict"; var ...

  3. 【mongoDB查询进阶】聚合管道(一) -- 初识

    https://segmentfault.com/a/1190000010618355 前言:一般查询可以通过find方法,但如果是比较复杂的查询或者数据统计的话,find可能就无能为力了,这时也许你 ...

  4. Java多线程(七)——线程休眠

    一.sleep()介绍 sleep() 定义在Thread.java中.sleep() 的作用是让当前线程休眠,即当前线程会从“运行状态”进入到“休眠(阻塞)状态”.sleep()会指定休眠时间,线程 ...

  5. face recognition[翻译][深度人脸识别:综述]

    这里翻译下<Deep face recognition: a survey v4>. 1 引言 由于它的非侵入性和自然特征,人脸识别已经成为身份识别中重要的生物认证技术,也已经应用到许多领 ...

  6. Jenkins集成openshift容器中进行代码扫描

    1.Dockerfile sonarDockerfile: (基础slave镜像参考上篇博文) FROM registry.it.com/openshift/jenkins-slave:latest ...

  7. Vue-computed的set和get

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  8. numpy.loadtxt()

    简介 np.loadtxt()用于从文本加载数据. 文本文件中的每一行必须含有相同的数据. loadtxt(fname, dtype=<class 'float'>, comments=' ...

  9. koa-router

    为了处理URL,我们需要引入koa-router这个middleware,让它负责处理URL映射. 我们把上一节的hello-koa工程复制一份,重命名为url-koa. 先在package.json ...

  10. Windows下如何更新 CodeBlocks 中的 MinGW 使其支持新版本 C++

    转自:http://blog.csdn.net/wtfmonking/article/details/17487705 虽然 CodeBlocks16.01 已经是最新版了,但其中的 MinGW 仍然 ...