LR Java脚本编写方法

  之前在某一家银行也接触过java写的性能接口脚本,最近因项目,也需编写java接口性能测试脚本,脑袋一下懵逼了,有点不知道从何入手。随后上网查了相关资料,自己又稍微总结了一下,与大家共同分享哈~

  首先,新建一Java Vuser脚本,要清楚自己的项目脚本所需的jar包,然后在LoadRunner的Run-time Setting设置--Java环境下的classpath,添加jdk本地的bin/lib及下面的dt.jar包和tools.jar包,项目所需的一些jar包。(注意:我使用的是LR12的版本,可以支持jdk1.8;若是LR11,支持jdk最高版本为1.6)

  其次,在脚本中,import导入自己所需的包。例如:

    import lrapi.lr;
    import java.text.SimpleDateFormat;
    import java.util.Date;

  具体脚本,举例上传图片一脚本仅供大家参考,有些可能不适用,但有些方法还是有共同之处的,其中包含获取当前时间、截取字段,判断和事务等内容。

 1 /*
 2  * LoadRunner Java script. (Build: _build_number_)
 3  *
 4  * Script Description:
 5  *
 6  */
 7
 8 import lrapi.lr;
 9 import com.client.SunEcmClientApi;
10 import com.client.bean.ClientBatchBean;
11 import com.client.bean.ClientBatchFileBean;
12 import com.client.bean.ClientBatchIndexBean;
13 import com.client.bean.ClientFileBean;
14 import com.client.impl.SunEcmClientSocketApiImpl;
15 import java.text.SimpleDateFormat;
16 import java.util.Date;
17
18 public class Actions
19 {
20
21     public int init() throws Throwable {
22         return 0;
23     }//end of init
24
25     public int action() throws Throwable {
26
27             SunEcmClientApi clientApi=new SunEcmClientSocketApiImpl("188.177.155.87", 8021);
28             String busiNo="TEST02-"+System.currentTimeMillis();
29
30             Date date = new Date();
31             SimpleDateFormat sim=new SimpleDateFormat("yyyyMMdd");//该日期格式例如20200116
32             String dateStr=sim.format(date);
33             //lr.message("#######当前时间:["+dateStr+"]#######");
34
35             ClientBatchBean batchBean=new ClientBatchBean();
36             String rsg="";
37             batchBean.setModelCode("TEST");
38             batchBean.setUser("uesr");
39             ClientBatchIndexBean batchIndexBean=new ClientBatchIndexBean();
40        batchIndexBean.addCustomMap("BUSI_SERIAL_NO", busiNo);         batchIndexBean.addCustomMap("BUSI_START_DATE", dateStr);
41             ClientBatchFileBean batchFileBean=new ClientBatchFileBean();
42             batchFileBean.setFilePartName("TEST");
43
44             lr.start_transaction("01_上传");
45
46         for(int i=1; i<3; i++){
47             ClientFileBean fileBean=new ClientFileBean();
48             fileBean.setFileName("E:/CSS/ceshi"+i+".jpg");
49             fileBean.setFileFormat("jpg");
51             fileBean.addOtherAtt("FILE_CN_NAME", "ceshi"+i+".jpg");
52             fileBean.addOtherAtt("BUSI_FILE_TYPE", "<Type>");//参数化调用
53             fileBean.addOtherAtt("BUSI_FILE_PAGENUM","1");
54             batchFileBean.addFile(fileBean);
55         }
56
57             batchBean.setIndex_Object(batchIndexBean);
58             batchBean.addDocument_Object(batchFileBean);
59             try {
60                 rsg=clientApi.upload(batchBean, "123");
61                 lr.message("#######调用上传返回的信息[" + rsg + "]#######");
62                 String code=rsg.split("<<::>>")[0];//字符串剪切,提取SUCCESS字符串
63                 //lr.message("#######CODE:[" + code + "]#######");
64                 if(code.equals("SUCCESS")){
65                     lr.end_transaction("01_上传",lr.PASS);
66                 }else{
67                     lr.end_transaction("01_上传",lr.FAIL);
68                 }
69             } catch (Exception e) {
70                 e.printStackTrace();
71                 lr.end_transaction("01_上传",lr.FAIL);
72                 lr.message(" 抛错信息 : " + e.toString() );
73             }
74
75
76         return 0;
77     }//end of action
78
79
80     public int end() throws Throwable {
81         return 0;
82     }//end of end
83
84
85
86 }

原文地址:https://www.cnblogs.com/zwh-Seeking/p/12199834.html

时间: 2024-07-29 19:27:58

LR Java脚本编写方法的相关文章

shell脚本编写方法

shell脚本编写就如同一门语言,涉及到运行环境.基本语法.变量定义.函数.参数(系统参数).条件判定.执行流程控制 等等问题. 本文就以下几个方面进行描述: 运行环境: shell  shebang  Path 基本语法: 命令.变量.函数.参数.条件.流程控制. 变量相关:定义.命令参数变量和系统参数 与 配置文件读取(-r cron.daily/sysstat脚本中). 函数:定义方法 条件判定与环境测试:-x -d -f 等 执行流程控制:case 等 字符串处理与高级指令: (sed

gulp脚本编写方法

建立一个gulpfile.js文件,内容直接抄gulp-htmlmin的readme: var gulp = require('gulp'); var htmlmin = require('gulp-htmlmin');   gulp.task('minify', function() {   gulp.src('src/*.html')     .pipe(htmlmin({collapseWhitespace: true}))     .pipe(gulp.dest('dist')) });

编写无Java脚本的JSP页面

在上一章中总结了Web开发中应用MVC架构模式,将Servlet 用做控制器,JSP作为视图,JavaBean作为模型,实现业务流程控制,页面逻辑和业务逻辑的分离.然而,使用前面的技术实现MVC,并不是最完美的. 在当代的一个最佳的JavaWeb开发实践就是在MVC架构模式中,中和使用JavaBean,EL(expression language),JSP自定义标记库以及JSP标准标记库JSTL,编写无java脚本的JSP页面. 一 JSP表达式语言EL 在使用基于MVC架构模式的Web应用开发

LoadRunner12的安装,如何添加jar包编写java脚本及相关配置信息

一.LR12的下载与安装 LR12下载地址:http://pan.baidu.com/s/1nvo0yqH 安装步骤: 1.运行下载好的HP_LoadRunner_12.02_Community_Edition_T7177-15058.exe 进入安装准备阶段 2.安装好提示的必备程序之后才能安装HP LoadRunner(lR的安装需要其他环境的支撑) 3.按照安装向导继续安装,注:强烈建议安装在默认路径下,可避免某些使用异常 4.取消HP身份验证设置,取消默认勾选的"指定LoadRunner

编写Java脚本统计工程代码总行数

在新公司工作将近一年了,一直独自一人负责服务端集群的运维和代码的编写.不知不觉从一个Project发展到了七八个Project. 看着越来越多的代码,今天突然想统计一下一共写了多少代码.[这里只统计完全由自己编写的代码,因为项目是基于Springboot的,所以直接统计 src目录下所有文件的行数即可] 首先,编写几个工具类. FolderFind.java import java.io.File; import java.util.ArrayList; import java.util.Lis

LoadRunner + java脚本 第二章

问题:我们执行接口压力测试首先要生成测试URL,测试URL部分字段要进行MD5加密,如何生成这样的测试URL? 有两种方案进行如此测试: 1.使用java脚本生成一批加密后的测试URL,然后将这批数据放入Lr参数库中,编写c脚本进行调用 2.封装MD5加密等类,并将构建测试URL类一并打包,加载到LR-ClassPath中,这样就可以在LR中编写java脚本调用jar包自动生成测试URL了 备注:LR11中在controller跑c脚本支持10000用户,跑java脚本支持1000用户:LR12

性能测试学习第九天_脚本编写

创建java脚本 环境配置: 安装jdk(lr11最高支持java1.6) 配置环境变量 在lr选择java Vuser协议 脚本结构: 一般在init中编写初始化脚本,在action中编写业务流程,在end编写释放资源的内容 /* * LoadRunner Java script. (Build: _build_number_) * * Script Description: * */ import lrapi.lr; public class Actions { public int ini

LoadRunner学习---脚本编写(4)(比较重要)

今天接着来翻译http://www.wilsonmar.com/中关于LoadRunner脚本编写部分,下面该翻译脚本编写中一些比较重要的部分了. Web用户Action 在VuGen中,脚本产生的默认模式是基于HTML的--“描述用户的动作的脚本”直接与用户的动作是对应的: * web_url是浏览器地址栏的URL. * web_link是点击在<a href= ...>和<a>之间的文本超链接. * web_image是点击HTML的<img href= link. *

Linux 脚本编写基础

1. Linux 脚本编写基础1.1 语法基本介绍1.1.1 开头程序必须以下面的行开始(必须放在文件的第一行):#!/bin/sh 符号#!用来告诉系统它后面的参数是用来执行该文件的程序.在这个例子中我们使用/bin/sh来执行程序. 当编辑好脚本时,如果要执行该脚本,还必须使其可执行. 要使脚本可执行:编译 chmod +x filename 这样才能用./filename 来运行1.1.2 注释 在进行shell编程时,以#开头的句子表示注释,直到这一行的结束.我们真诚地建议您在程序中使用