LoadRunner+Java接口性能测试

想必各位小伙伴们会对LR还可以调用java感到好奇,之前我也这么一直认为LR只支持C语言。其实LR脚本支持的语言有:C、Java、Visual Basic、VbScript、JavaScript,只不过默认的是C语言而已,下面我们就以java接口测试代码来进行性能测试。


一、Java代码调试
1、导入测试jar包(公司内部加密接口)

2、代码运行成功

如下图正是因为上述接口运行成功时返回码retcode为000000,所以我们自己加上下面这段业务代码,
其目的就是为了在LoadRunner中压测的时候判断调用成功与失败

//LoadRunner压测返回码判断
			if(!response.contains("\\\"retcode\\\":\\\"000000\\\"")){
			    return -1;//即调用成功
			}
			else{	
			    return 0;//调用失败
			} 

3、导出可执行的Jar文件(包含lib库)
右键项目->Export->java->Runnable JAR file

导出到桌面(jar可执行文件和lib库文件夹)

二、将导出的文件放到Loadrunner中
1、下面是我搭建在测试服务器上的LoadRunner 11
Remote Desktop Connection Manager为微软一款远程连接工具,个人比较喜欢,可点下载

二、机器上安装JDK(注意Loadrunner 11只支持JDK 1.6 32位而LR12支持JDK1.6以上版本),测试机器已经安装JDK1.6 32位

  • JAVA_HOME:D:\Program Files\Java\jdk1.8.0_45
  • Path:%JAVA_HOME%\bin;
  • CLASSPATH:.;%JAVA_HOME%\lib;  

三、Virtual User Generator中编写脚本

public class Actions
{
	public int init() throws Throwable {
		return 0;
	}//end of init
	public int action() throws Throwable {
	    	lr.start_transaction("creditdemo");//下面事物内容为调用测试代码中的方法并且判断业务返回码
		int ret = P_C_B112.Request();//调用可执行文件中类的方法,我的类名为P_C_B112,方法(被测接口)为Request()
		if(ret<0) {
        lr.end_transaction("creditdemo", lr.FAIL);//返回码<0,调用成功,此处调用了我们之前写的一段请求接口是否成功的业务代码
		} else {
		    lr.end_transaction("creditdemo", lr.PASS);//返回码>0,调用失败
		}
		return ret;
	}//end of action
	public int end() throws Throwable {
		return 0;
	}//end of end
} 

 

运行一次保证脚本调通

 

三、Controller场景设置
导入刚才我们已经调通的脚本

下图已经跑通了5000多笔交易

四、Analysis分析压测报告
生成压测报告,分析报告,给出结论

 

Over。。。。。。

posted @ 2018-04-10 14:16  TesterWei  阅读(8883)  评论(5编辑  收藏  举报