LoadRunner 调用so 动态库,做性能测试

上一篇 / 下一篇  2012-07-09 10:04:49

找一台linux机器,先简单创建一个动态库.
写头文件test.h
/*
  test.h
*/
 
int add(int a,int b);
 
写c文件test.c
/*
  test.c
*/
#include "test.h"
int add(int a,int b)
2[{p U!^w!y0{51Testing软件测试网:m]$A,n-E
   int c = a+b;51Testing软件测试网+O&TL5L6~Q
   return c;51Testing软件测试网oV,adH9V
}
 
动态库编译:  gcc -shared test.c -o libtest.so
该动态库就简单实现了一个加法运算,给予调用.
 
 
我们先用windows下的VU去生成测试脚本,这里我们选择的脚本协议为:C Vuser.
/*
 脚本内容
*/
int a = 0;
P7Z/LR#W%D6w+Q0char* so ="./libtest.so";51Testing软件测试网){!@ ao"e/gN
lr_load_dll(so);  //和windows下的dll文件调用一样,用lr_load_dll去调用so文件51Testing软件测试网gIrg }^6Q;f/{
a = add(4,2); //执行so动态库下函数 add
2k Z yxr#|s p_bZ0if(a == 6)
i)TJ {^q0{51Testing软件测试网-_6kz@.Yd ty
   lr_error_message("The result is %d",a); //这里是故意让他输出信息,来显示是否调用函数正确.
]-_sGh5H0}
脚本编写完毕后,同时把libtest.so文件也加载到脚本中去. 步骤: File->Add Files To Script...
 
由于SO文件是linux下的动态库,所以只能在linux环境下才能执行上述脚本.
 
我们需要在linux下装一个LoadGenerator,然后通过windows下的Controller去控制选用linux下LoadGenerator来执行该脚本.
 
 
 
网上找的安装步骤,linux下安装LoadGenerator
1.      在HP的官方网站上下载LoadRunner9.5 的Linux安装程序[T7177-15009.iso],安装文档[hp_man_LRIG9.50_01_pdf.pdf];

6BSYz/[3E0安装程序包括Hp、Ibm、Linux、Solaris系统的支持(LR9.0对应安装文件为[TLRNUX900WC_00.zip])。51Testing软件测试网1y,vj4ee&D1U0HA&g

T0_o@y051Testing软件测试网Z4A$n7Q'F/@"X

T(Y:F GZ-R6H4NP02.     安装包的处理

I7lcqj051Testing软件测试网.f D5p;X1u

1.      ZIP解压:unzip TLRNUX900WC_00.zip

Y'zA$\8fh tKd2j0

~4Y*ACG*f"X;SS"NY02.      挂载ISO:mkdir /mnt/LoadRunner ; mount -t iso9660 -o loop T7177-15009.iso /mnt/LoadRunner

(f'_la2M7O0

6P6eL|b)zjG051Testing软件测试网UB]h~2n4@

aE)vD{*@,}] p hWVFI03.     开始安装,以LR9.5为例:

V?LS$@Q"s HM051Testing软件测试网2d#GN/`+qt]

/mnt/LoadRunner/Linux/installer.sh51Testing软件测试网&h{s FX4D(dl

51Testing软件测试网9jg KOIG

按提示操作,直接Next到完成。51Testing软件测试网L y&Wp!Rrd

RD[ye:j#V;Jc0

v%X!v%LL0

/i3CjrZ7U#Kiz04.     添加用户和环境变量

%}R5jic0

o#Ytn1?0useradd -g 0 -s /bin/csh higkoo

q\8x L6P)| J0

MD;S4b t%s0cat /opt/HP/HP_LoadGenerator/env.csh > /etc/.login

%Bs.J DH051Testing软件测试网.`,}w@5Xiki

cat /opt/HP/HP_LoadGenerator/env.csh >~higkoo/.cshrc51Testing软件测试网q4M z8o&e)zE{n

Y/MB Oo4q'x3A0touch ~root/.rhosts ~higkoo/.rhosts51Testing软件测试网`WDhCv-J'{

51Testing软件测试网|2y#|F{j

51Testing软件测试网UW)YzEw)|+x0A

+E }G$K%Rj*y(p05.     检查运行环境(在本机或使用VNC执行):

7Vz r8_/if051Testing软件测试网rak't MM

su - higkoo51Testing软件测试网#nE*W(`$_E%s

sG2k Q|u0cd /opt/HP/HP_LoadGenerator/bin/51Testing软件测试网 E-x@5T)B[.{

51Testing软件测试网'f*Y6} L&F,?6QG

./verify_generator51Testing软件测试网(DV'y5` q3i$dq*Il^A

TK^a0q\yd051Testing软件测试网+g/GAR,s/H#y;P

@ |&K#Ul,Y3U0gps06.     启动服务(用新增的用户higkoo):51Testing软件测试网zm&zZ m{

4td j$zz)R.E1O0cd /opt/HP/HP_LoadGenerator/bin/

0|!X3xl k e0

Z:MJ*hFl0./m_daemon_setup start51Testing软件测试网1r6Q(ov:{$dsy9N

_3Kr'Um&f0

|'p"l"}g2x)Z051Testing软件测试网oWF1q U;r

7.     检查是否启动

-j:^H'\1qKm;e+Q'Z%c051Testing软件测试网9hTp)Cr0f&f~r/n)OQ

ps aux | grep m_agent_daemon51Testing软件测试网u5~#zw;M|&~

E7z"|/]nU+a0b0netstat -naop | grep 54345

,l4Np&K }_l051Testing软件测试网9GV{0l`Q"m9NX

'~;[.~y&m:wJ^6R3h*E0

*M#f.lO*e5I!M08.     注意事项

q\H{Q0

U"mAS3q6n(t0开启端口54345或关闭防火墙(service iptables stop)

(S2H;R5d'@$X*o051Testing软件测试网hmp yHJ-S#z5a

K(K3^ y'zr+Y0

o%QO+dF051Testing软件测试网&zd+O4_un,l~

51Testing软件测试网[W"[%o` D

正确设置后用verify_generator的检测结果是:51Testing软件测试网9?)UV1QP7|[

51Testing软件测试网jrao+gg;DPK

./verify_generator51Testing软件测试网"X-l\8v}/o

){ {L8\.N;]B'Rb0===================================================51Testing软件测试网rHTT'sM

*a"JT,`"n0              HP51Testing软件测试网+g[P6P0M+Kn

51Testing软件测试网U#GsjCT0pM

     Vuser Environment Verification Utility

7h9j&K{wW051Testing软件测试网tS~s$t

===================================================51Testing软件测试网Sroi+S#X}k

51Testing软件测试网y+k w(a#ti!j3r-VS.a

51Testing软件测试网sF7U0J;u2j/p:}bb

51Testing软件测试网(l0Tu"}(Xv N[)PP

Product: HP LoadRunner 9.50

rz[vebr051Testing软件测试网2y8r _:l3@iP;d R

Version: 09.50.000051Testing软件测试网#x-BW N5Mtt+s5_5r6P$A

51Testing软件测试网.rZY4D1f jg1Q2\%Hd2R

Build: 3378

*ZG#|4e;D1h0

r?.n,s1k+X;H0higkoolincn100ce5:

RB0] N,v F z)u0

A2w]&aC3l/H'c,im051Testing软件测试网,Q0iZ!zl

r7@*{rUF e |:u?PY0verify_generator...OK51Testing软件测试网 y&V&a6KKD

8rV'l"jv$msh0verify_generator...OK

4w ]t'V2_5n*a0

L'F:nrWf&V8z@ d@0verify_generator...OK

n&^{Rjd#G051Testing软件测试网-k\tOG

Don't forget to make sure that the name of the controller machine

e,CVY*E|;K0

$S:pDR4A.f5}#E,Z0is also in .rhosts51Testing软件测试网~!`;O4MV)f/g

51Testing软件测试网p-R.~%c"MIzAC

verify_generator...OK51Testing软件测试网;[!vc @6\)M f

\ _*Qk7F&aV0verify_generator...OK51Testing软件测试网r'{viJ:lA

u]V:JR0verify_generator...OK

EV@w ZIxnhi%bx0

*S9G^v'|(? X0verify_generator...OK51Testing软件测试网"n K8E"_7[!j9H/iQ9W:_

51Testing软件测试网7_3W X'|d$c;{[N:|

verify_generator...OK51Testing软件测试网/q2U\:m9\1[)R

/@+G.E}P(t*[%{0verify_generator...OK51Testing软件测试网os!P!iB7p:c c

R/Lg4c(ND^%m0verify_generator...OK

Gw L+ll051Testing软件测试网hP:]1qP.@#JYQ5^

_______________________________________________51Testing软件测试网f_XVI'w-\

&n1lt3qyZ0

'lb/q$[A C0

}R HF9m{0Summary:

KEq'H2nb%X0

zN)H+z$F0________51Testing软件测试网$TXNLK"z Jt]

+u!p8EJFXP f n}0Vuser Host higkoolincn100ce5: OK

l&g }&SN9SP2b$\051Testing软件测试网cU2X+Rro

51Testing软件测试网.]$S+O-eC1?$d

51Testing软件测试网 O7T4D"?S Q V

使用Controller连接,在“UNIX Environment Tab”下选择“Don't use RSH”即可连接Linux负载机。51Testing软件测试网N0Y,ayrUUo

 
 
linux下的 LoadGenerator 安装完成后,我们就可以控制选用该机器为负载机去执行脚本,脚本执行完毕,会显示一个error信息,信息内容就是我们脚本中故意打印的提示内容 "The result is 6",说明so动态库调用成功.
我们就用上述方法,对被测试动态库可以根据不同的性能场景,进行性能测试.
 
 

TAG:

 

评分:0

我来说两句

Open Toolbar