热爱测试,主要研究性能测试和自动化测试方面的技术,希望与同样对测试有热情的你一同进步成长

LoadRunner Citrix协议知识总结一

上一篇 / 下一篇  2008-12-29 15:35:26 / 个人分类:性能测试

最近zibeike在做一个使用LoadRunner Citrix协议的性能测试,测试过程中遇到了一些问题也查找了些Citrix协议的资料,现把LoadRunner Citrix协议的相关知识总结一下。

0i-@$b@ ]]y7`0

9ez9Y7wy5~5x*h0 .脚本录制51Testing软件测试网\y8Tx kb

2JAciv@ |!f6py0     1.录制环境中需要安装Citrix客户端程序51Testing软件测试网RS+MR,m3t

51Testing软件测试网S8d-V|@&YPG@

     2.根据Citrix情况的不同,需要选择不同的协议,主要有:

Vg1e N)|051Testing软件测试网1L} Q7E }+T"G.U

       1)如果是单纯的Citrix客户端程序,选择Citrix协议即可51Testing软件测试网 Sv!Te&FFtRMi'G

51Testing软件测试网MyY*Z @@WdQ)v#Mv

       2)如果是NFUSE application portal方式与Citrix服务器连接,需要选择多协议Web(http)Citrix协议,需要注意的是: Web(http)使用基于URL的录制方式

D1f^ z#QX'O{(T051Testing软件测试网{C Ue {t^:D+w6Kt

    注:LoadRunner使用多协议WebCitrix录制,录制过程中发现有些机器能录制成功,有些机器在使用多协议WebCitrix录制的时候,LoadRunner报错,退出,重装LoadRunner无法解决,只有重装系统才能解决。

+Hr.[ y+W051Testing软件测试网_;u4e)a%Igc+p

     3.确保分辨率设置一致

7[+M3T m{%JC$]X0

QL;j ]/c PE0     录制脚本中选择的分辨率,需要跟运行脚本的机器分辨率保持一致.51Testing软件测试网,qPn8U;[}

51Testing软件测试网}+|DBa

如下是脚本录制时分辨率的设置:51Testing软件测试网 c)j'Qc0C{"?:e

51Testing软件测试网D M Aw.iYfVp"?!v4hV

51Testing软件测试网8R;H@ J |t3_ Q

.mvs*Z~;B$D"a_0 51Testing软件测试网D Y't$TF6J

/K:G6J&{;rA0  51Testing软件测试网kL%Mq ?%h+l;I S?C

4.录制的脚本例子:

5JPzYTn2J051Testing软件测试网6|8Q){K"i\D)Dy

      Action ()51Testing软件测试网;b6Ri$mNc/Ps3\1e

51Testing软件测试网;}(N2d4F;Yygh

{51Testing软件测试网0~x+S8Nt

51Testing软件测试网d5y"dhk~(U T

ctrx_mouse_click(90, 154, LEFT_BUTTON, 0, "WINDOWS - TestModule Module=snapshot13", CTRX_LAST);51Testing软件测试网3U.x2k E9w*OQJ
 51Testing软件测试网&_ J;L8A+{'Q ^+lhf
 ctrx_mouse_click(253, 115, LEFT_BUTTON, 0, "WINDOWS - TestModule Module=snapshot14", CTRX_LAST);51Testing软件测试网%va7v-S2o_#TW!W
 51Testing软件测试网$dC#u Q#D&Z]+W |
 lr_think_time(5);
51Testing软件测试网#j l,U E5ZIS#e"Q

1w.K%xIq7F0 ctrx_mouse_double_click(380, 138, LEFT_BUTTON, 0, "WINDOWS - TestModule Entries=snapshot15", CTRX_LAST);51Testing软件测试网g ZJ L8\/i-B;pG

q[^!t Dc6D$i o0 lr_think_time(5);

P:G;{ND(KM0

 ctrx_sync_on_window("WINDOWS - TestModule Entry[New Policy] - Policy Header", ACTIVATE, 38, 110, 955, 569, "snapshot16", CTRX_LAST);

j Z#PQN0


WloLFE:yg0 ctrx_mouse_click(239, 119, LEFT_BUTTON, 0, "WINDOWS - TestModule Entry[New Policy] - Policy Header=snapshot12", CTRX_LAST);
51Testing软件测试网]$Tu*M \ x


uR?6zzy5`8kZ7XW!y0 lr_think_time(5);

i?XMp#c0\,M0

51Testing软件测试网m!m)sU8y9g$b'K
 ctrx_sync_on_window("WINDOWS - TestModule Entry[New Policy] - Policy Header", ACTIVATE, 38, 110, 955, 569, "snapshot16", CTRX_LAST);

X!U0K1TP&I@:E0

"_Zo?w ](e5a(W/z0 ctrx_key("TAB_KEY", 0, "", CTRX_LAST);

y\%U r EW w Xqz0

7Q-` B&`:NL9^0 ctrx_key("TAB_KEY", 0, "", CTRX_LAST);

q }fm2k;@!xC!r0

XQB!`$c0 ctrx_key("TAB_KEY", 0, "", CTRX_LAST);

g[ zJ{051Testing软件测试网|,\#\Dy0`

 ctrx_mouse_click(534, 87, LEFT_BUTTON, 0, "WINDOWS - TestModule Entry[New Policy] - Policy Header=snapshot28", CTRX_LAST);51Testing软件测试网/Mxu5Yz5_ u

51Testing软件测试网3k7AYpfT!O

 ctrx_type("test", "", CTRX_LAST);51Testing软件测试网 a%_4Ap.z](t

yS$r4}ODG g1^0 ctrx_key("TAB_KEY", 0, "", CTRX_LAST);51Testing软件测试网 yG"xj7V w

6H5^ J Yd?c2[0 ctrx_type("test2", "", CTRX_LAST);

d6p1ylh051Testing软件测试网*Q#M} {'Ia;Gh"w

 ctrx_key("TAB_KEY", 0, "", CTRX_LAST);

+i%^!c GU)L%W|?\0

KpN8]%ca U8B`0 ctrx_type("2512", "", CTRX_LAST);51Testing软件测试网:Vj#lo4o8LI,AXk

(}:d3jH J3}kNf0 ctrx_key("TAB_KEY", 0, "", CTRX_LAST);51Testing软件测试网*w*qc Z*v2]S&n irI[

51Testing软件测试网;oD[ Hn8M

 ctrx_key("TAB_KEY", 0, "", CTRX_LAST);

f9Y:XudN0

LY~1M3B7f4{&|0 ctrx_type("1", "", CTRX_LAST);

8TA nG[y Q0

~4_O xPQ0 ctrx_key("TAB_KEY", 0, "", CTRX_LAST);51Testing软件测试网cu*]f7I;T'R@

51Testing软件测试网-|*nS/Z"kAh*Z


S(V9H S%B"qN*Z'Y0 lr_think_time(5);

_c nc Le`0

4Q.{7wK;ak^O0
5S3d,\uFy0 ctrx_mouse_click(226, 152, LEFT_BUTTON, 0, "WINDOWS - TestModule Entry[New Policy] - Policy Header=snapshot46", CTRX_LAST);

X#e;Mr`*N051Testing软件测试网"x YP_?@az

 ctrx_type("test3", "", CTRX_LAST);

6Y|mmVI0

gH7{Q#h1B0 ctrx_key("TAB_KEY", 0, "", CTRX_LAST);

!y_ s2y^r0

Fxs"U9f[051Testing软件测试网(s,U-a,? J*] p9sx`
 lr_think_time (5);

WcS2D'a+K0

$A3bo5`!eJ0 ctrx_sync_on_window("WINDOWS - TestModule Entry[New Policy] - Policy Header - Ins", ACTIVATE, 59, 230, 913, 361, "snapshot50", CTRX_LAST);

mh#T$pc hy9o0

D'Gy3Z-}A v/at.oN0 ctrx_mouse_click(188, 89, LEFT_BUTTON, 0, "WINDOWS - TestModule Entry[New Policy] - Policy Header - Ins=snapshot51", CTRX_LAST);

|RbN$L)b\0

e-V:oFb"f0 ctrx_mouse_click(713, 332, LEFT_BUTTON, 0, "WINDOWS - TestModule Entry[New Policy] - Policy Header - Ins=snapshot52", CTRX_LAST);51Testing软件测试网]+Q \y`}V

51Testing软件测试网"Cc2}H.K"|

 }

X z AsD'],`I ]q H051Testing软件测试网 U/c@$uTO!S LV

    从上面录制的脚本可以看到,脚本录制的是鼠标和键盘,以及同步窗口的操作51Testing软件测试网&R3P'o8kf WT

51Testing软件测试网b GM^fC

 .脚本增强

9q@~*gH0

1.    增加必要的思考时间.思考时间的长短需要多次回放脚本,使脚本能正常回放,不会出现错误为准。有些时候,某些输入字符串的函数没有执行,或者某个键盘操作没有执行,这些地方都需要添加思考时间来保证函数的正常执行。还有在页面已经发生变化,但脚本中没有同步窗口函数ctrx_sync_on_window()的地方,更需要添加思考时间来保证变化的页面在一定时间返回后再进行下一个操作。

m+mO ho5lP0w0

2.    弹出窗口的处理(错误处理)经常会遇到某些错误窗口或者提示信息窗口弹出,而且是否会弹出该窗口是不确定的,那就需要进行判断处理了,使用如下函数:51Testing软件测试网Z*aW` i#AhlE'_+t0[

    ctrx_get_window_name(window_name, CTRX_LAST); //获得当前活动窗口的名称
a1h$`^L#P`!n$`7K C(|[051Testing软件测试网%v2h1Q?aK5L
      if ( strcmp(window_name, "error windows") == 0 ) { 51Testing软件测试网7G s9mi:NUq"C-O
51Testing软件测试网if^9o8[1q
      rc = ctrx_sync_on_window("error windows", ACTIVATE, 311, 212, 345, 289, "snapshot12", CTRX_LAST);  51Testing软件测试网4X%Yp5s%t5uH
51Testing软件测试网6^&Y2?] Sr E5xZ
        if (rc == 0) {                        //
同步某个窗口,返回值0为同步成功
4KZC6w E6?&a051Testing软件测试网 O3} }h6?;Av1t
            ctrx_key("ENTER_KEY", 0, "snapshot78", CTRX_LAST); //
进行操作,  点enter51Testing软件测试网'^JseA%F d0P
      }

zg+n!Btvv0

注意window_namerc需要提前声明:

0mn;[| yp KqER0

 

0u kZH'^!}x@ }0F0l#@0

char window_name[100];51Testing软件测试网x+mO$k,N*I.c6[3Rr^

int rc;

io b|$l:M0

51Testing软件测试网]G!aIxu
  
3.增加必要的同步窗口代码51Testing软件测试网yMjxD(c

    ctrx_sync_on_window("error windows", ACTIVATE, 311, 212, 345, 289, "snapshot12", CTRX_LAST); 51Testing软件测试网,Sr;s4OS x)X

    关于Citrix函数的用法,后面会详细介绍.51Testing软件测试网O%@y5}(h&B}F4`!lH

  4.登陆帐号参数化

'O j*Pn0^*K Y t0

     Citrix的登陆最好放到init,而且登陆名参数化,参数取值设置为Unique , Once

i E[6nF;[oQ~0

   51Testing软件测试网7FP8Z;D.}$OfO'g|7v B

    zibeike提示: 未完待续......51Testing软件测试网 kS%r|T4k W0`


TAG: LoadRunner 性能测试 citrix

howfly的个人空间 引用 删除 howfly   /   2014-03-24 17:21:44
hi , 遇到 Citrix 协议问题请教:

Web(http)和Citrix协议 ,但录制不到Citrix协议的内容,请问有没有解决的方法?

可+Q:444063105 赐教
 

评分:0

我来说两句

Open Toolbar