LoadRunner调用Java程序—性能测试

上一篇 / 下一篇  2012-05-25 09:43:30 / 个人分类:LoadRunner

为了充分利用LoadRunner的场景控制和分析器,帮助我们更好地控制脚本加载过程,从而展现更直观有效的场景分析图表。本次将重点讨论LoadRunner如何调用Java测试代码,完成压力测试

2a/?WAeD L ZM0   通常我们在执行一些Server的压力测试的时候,总会不经意间想要一个Client完成对Server的调用示例,以至于我们可以通过 LoadRunner直接录制,对于测试人员来说确实很方便。不过,开发人员如果没有那么多时间去为测试人员服务,那可能就比较悲剧了,只能自己尝试去调 用接口来完成压力测试了,这样就需要具备一些代码的功底了。当然如果完成接口代码的调用之后,还要保证LoadRunner能够正确录制,那确实有点麻烦 了。很多时候,我们的接口压力可能确实无法通过Client端来展现,那就只能在Server使用纯代码形式完成,要么是多线程,要么是重复调用,但对于 测试结果的收集就不那么方便了。所以我们还是要向办法利用一些工具的优势,取之所长,为我们所用,LoadRunner的图表分析就是所有工具里面最优秀 的,正好它也支持Java代码、C++等调用接口,这里以Java为例。

j/wq.u,Gw;X0U x N051Testing软件测试网3xu(ve2G[ \'R1f'Lo

  通常在一个工程文件下,我们想对其中某一个Java文件进行调 用,但这一个Java代码总是与其他的代码进行相互调用,所以我就需要引入很多的Java包或者是一些Jar包,下面就通过本次实践来详细讲述 LoadRunner调用Java代码的步骤了,我这里的环境是LoadRunner11,JDK1.6,工程开发是Java+Flex,完成的是一个统 一登录接口的测试。具体步骤如下:

H*| u&?(G"W:P051Testing软件测试网&UPh`]u2d

  1、将Java工程文件打包成jar格式,比如我这里的工程为logindemo,打包jar之后为logindemo.jar51Testing软件测试网pCP;f~J

Wh)EX/L!u4}0  2、将Java工程文件下的lib目录找出来,lib文件中基本都是jar包,这个是工程文件的调用jar包

"R'b!C,d#n)VC"p-o051Testing软件测试网,L;dm"u,e;d/i:R

  3、开启LoadRunner新建一个Java Vuser的脚本,先运行哈,看脚本是否正确执行,并保存文件51Testing软件测试网XS0}3}7jI

1U3fj#t~dH0  4、将logindemo.jar和lib下的jar全部导入到LoadRunner的ClassPath下,前提是要保证JDK文件要导入到LR中,在LR中的Vuser——》运行时设置里,如下图所示;51Testing软件测试网1vPwU6[Z

51Testing软件测试网[,v~]:S`9p0je

   5、完成以上操作之后,这个时候我们就可以在Vuser脚本中引入Java中的调用程序了,本人开始用import方式引入的时候,发现很奇怪,第一次 居然是成功的,但后台就一直都报找不到包,暂停了很久,于是用package的方式引入,发现还是真可以,于是接下来就开始运行,发现很好用,而且程序调 用也确实是ok的。51Testing软件测试网 E I*BZ;^ @ _ r!O

  注意:这里其实没什么特殊的操作,主要是对于jar包的调用方式上,可能需要注意一下几点:

m!W:s}1T'd'|h.?0

  1、在引入jar包的时候,比如上图上面的引入jar文件夹的方式,就不可行,这个是一个疑点,所以就只能选择将所有的jar包一并导入就ok了。

3},Tv s R:G$WU)T9[-o0

  2、在Vuser中引入Java包文件时,import方式居然是偶尔行偶尔不行,所以选择package方式是绝对可行的。51Testing软件测试网 f"e_4bW'F*\` azd

  3、在Vuser引入Java包之后运行时可能会出现一些报错,基本都是jar文件情况,只要找对了LoadRunner的Classpath就基本没问题,还有就是JDK一定要先导入,不然会直接提示进程被终止,不能运行Java文件。

^:{ D;G_'y0

   4、LoadRunner对于Java文件的引入方式有多种,这里调用jar包的方式是我们平常应用最多的,也是最方便的。当然还可以将Java编译后 的class文件,复制到LoadRunner的安装路径下的classes下,必须将Java class整个包文件夹全部复制才能执行,这种方式可需要花费调用的时间,而且最终要调用的jar包,还是要到Classpath下导入才行。51Testing软件测试网U%k"a)U8f3d3]

  至于Java业务逻辑的实现,可以在Java中实现,然后Vuser直接调用方法接口,淡然也可以在Vuser中完成。然后就可以到场景中设置虚拟用户数进行场景测试了,然后根据场景测试的结果得出分析图表,跟其他录制之后的测试方式基本相同。51Testing软件测试网_0jE2nD]K7~1U


TAG:

 

评分:0

我来说两句

Open Toolbar