LoadRunner Vuser测试脚本添加前置条件举例
调用接口前需要先获取登陆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测试脚本添加前置条件举例的更多相关文章
- Loadrunner开发测试脚本
Loadrunner开发测试脚本 开发测试脚本可以通过录制,也可以手动开发,建议能录制的尽量录制,省时省力,不能录制的只能费力自己开发了,具体看项目情况来决定. 使用Loadrunner开发脚本过程中 ...
- LoadRunner Vuser接口测试脚本 Post举例
发送内容为JSON的POST请求需要加入"EncType=application/json",表单参数不需要.(JAVA API) // POST接口调用 web.custom_r ...
- loadrunner创建测试脚本运行无响应 不记录脚本
解决一运行User Generator直接程序卡死无响应的办法. (1)“我的电脑”点右键->属性->高级 点选“性能”中的“设置” (2)打开对话框后,进入“数据执行保护”,如果空白框中 ...
- (转载)loadrunner简单使用——HTTP,WebService,Socket压力测试脚本编写
原文出处:http://ajita.iteye.com/blog/1728243/ 先说明一下,本人是开发,对测试不是特别熟悉,但因工作的需要,也做过一些性能测试方面的东西.比较久之前很简单的用过,最 ...
- Loadrunner 脚本开发-利用Loadrunner生成Web service测试脚本
脚本开发-利用Loadrunner生成Web service测试脚本 1.选择协议--Web Service,如下图 2.导入服务 入口1:点击Manage Services ->弹出窗中选择“ ...
- myeclipse调用loadrunner函数开发测试脚本
myeclipse调用loadrunner函数开发测试脚本 一.使用myeclipse开发性能测试脚本 1.使用Eclipse新建一个Java工程,将目录%LoadRunner_Home%\class ...
- LoadRunner压力测试实例
1 LoadRunner 概要介绍... 2 .项目背景介绍... 5 .使用LoadRunner进行负载/ 实施测试... 16 6.1 Memory相关... 22 6.2 Processor相关 ...
- LoadRunner压力测试实际运用的使用方法
LoadRunner 是一种预测系统行为和性能的工业标准级负载测试工具.通过以模拟上 千万用户实施并发负载及实时性能监测的方式来确认和查找问题,LoadRunner 能够对整个 企业架构进行测试. 方 ...
- 【LR】录制测试脚本中的基本菜单
学习来源: MBoo,小强老师性能测试及Loadrunner培训 ——录制测试脚本: 1.Vuser -> run-time settings ->General Run Logic : ...
随机推荐
- linux上安装完torch后仍报错:ImportError: No module named torch
linux上安装完torch后仍报错: Traceback (most recent call last): File , in <module> import torch ImportE ...
- C# GDI+双缓冲技术
我想有很多搞图形方面的朋友都会用到双缓冲技术的时候,而且有的时候她的确是个头疼的问题.最近我也要用双缓冲技术,程序怎么调试都不合适,当要对图形进行移动时,总是会出现闪烁抖动.在网上找了些资料,说得都不 ...
- BZOJ4061/Gym100624F CERC2012 Farm and Factory 最短路、切比雪夫距离
传送门--BZOJCH 传送门--Vjudge 设\(f_i\)表示\(i\)到\(1\)号点的最短距离,\(g_i\)表示\(i\)到\(2\)号点的最短距离,\(s_i\)表示\(n+1\)号点到 ...
- zookeeper-监控与优化-《每日五分钟搞定大数据》
本文的命令和配置都是基于zookeeper-3.4.6版本.优化很多时候都是基于监控的,所以把这两个内容写在了一起,慢慢消化. 监控 简单地说,监控无非就是获取服务的一些指标,再根据实际业务情况给这些 ...
- 一篇 JPA 总结
概述 下面是 JDBC 在 Java 应用和数据库之间的位置,充当着一个中间者,供 Java 应用程序访问所有类别的数据库,建立一个标准 JPA 如同 JDBC 一样,为 Java 应用程序使用 OR ...
- python--map()、reduce()
map()和reduce()是一种在处理大数据时的重要思想,在平时也可以利用.在python中内置了这两个方法,map取映射的意思,reduce取归纳的意思. 一.map() map(func, ls ...
- .NetCore 2.1中的HttpClientFactory最佳实践
.NET Core 2.1中的HttpClientFactory最佳实践 ASP.NET Core 2.1中出现一个新的HttpClientFactory功能, 它有助于解决开发人员在使用HttpCl ...
- OO生存指南P1
写在OO作业之前 在正式写oo作业之前,先说一些“废话”吧,就当是对oo的吐槽. 事实上,早在大一的时候,听说数分很难,然而事实证明数分并没有有让我通宵的体验. 在大二上的时候有一门课叫祭祖,号称是第 ...
- Python—模块介绍
什么是模块? 在计算机程序的开发过程中,随着程序代码越写越多,在一个文件里代码就会越来越长,越来越不容易维护. 为了编写可维护的代码,我们把很多函数分组,分别放到不同的文件里,这样,每个文件包含的代码 ...
- XGBoost模型的参数调优
XGBoost算法在实际运行的过程中,可以通过以下要点进行参数调优: (1)添加正则项: 在模型参数中添加正则项,或加大正则项的惩罚力度,即通过调整加权参数,从而避免模型出现过拟合的情况. (2)控制 ...