资源描述:
《用LoadRunner编写socket应用的测试脚本》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、用LoadRunner编写socket应用的测试脚本 LoadRunner提供了很好的对socket应用的支持,用户可以通过录制方法完全获得客户端发送和接收的数据,然后在录制的基础上对相应的数据进行参数化和关联等处理。51Testing软件测试网~Zn"C)S[-e)Stv-go}QHO-F0 但在有些情况下(例如,客户端程序没有windows上的版本),我们就很难通过录制达成生成脚本的目标了。但如果我们能够完全知晓服务端和客户端的交互过程,完全手工编写一个测试脚本也并不是一件特别困难的事情。s}?0
2、A@t8N.f#y051Testing软件测试网B%z^@tm^4
3、 在本文中,我们以一个实际的例子说明如何根据服务端和客户端交互的过程,用LoadRunner自行编写相应的脚本。U!C2k,S(f0qe8j6`,}0 以下是服务端工作线程的代码:7s2]M(AnR0DWORD WINAPI mythread( LPVOID lpParameter) //客户线程51Testing软件测试网!rFdtZ@{~UX_Xu0 struct My my;~)}JI$rH5~&edT0 me
4、mcpy(&my,lpParameter,sizeof(My)); .P/Xw)J_0 printf("One client connect!");51Testing软件测试网_0u'Y6e!?6L)Ri char str1[1024]; //接收字符串51Testing软件测试网c*I@7{WN:B%~ char str2[1024];,@I0I1x
5、0 51Testing软件测试网$G?EQKN2]y int i;SX"Mh
6、.}+Vd1f0 i=recv(my.skt,str1,sizeof(str1),0); //接收客户请求;a8Z@U,u8^BRq0 str1[i]=0;n8g"M5CWs[0"@Vf%ZZ?g0 char *filename;H]6mo~3HC9S&q0 filename=new char[255];51Testing软件测试网sP)kP:Vj(S4U for(int j=2;j
7、g"E {51Testing软件测试网4JM(`7_vM7d filename[j-2]=str1[j];51Testing软件测试网2Dsg1b*v[%{d&o:MN })V?gK2g!U,Yh[p)g0 filename[i-2]=0;n7?7O/um-g#CL#i7s0 51Testing软件测试网l:o(q}3
8、)mo
9、51Testing软件测试网8]2m@SQH"D if (str1[0]=='S')aOhK[;R0 {51Testing软件测试网7Q+M_w&k
10、?d"q8X printf("The file name : %s",filename);-UA3wvd
11、g%YV0 ofstream out(filename); //创文件流 J1TYyUh/8e0 if (!out)&C9FC:J4M/SQCg0 {51Testing软件测试网'_p3dR8z4`)y printf("cannot open file."); //文件是否正确打开,打
12、开错误则退出'e
13、+pP4X5c'K{0 send(my.skt,"q",1,0); //向客户发送退出信息51Testing软件测试网.Q"MMHNeVW closesocket(my.skt); //解除客户连接;51Testing软件测试网o(P*FLo/HbVf return 0;kDM2L_N'y
14、2Dk!^6Q0 }%O#v]6P5}Bh2E+x+M6k0 str2[0]='O
15、'; "XW7h`hZ0 str2[1]='K';9q9x!S;~f6E:V0 str2[2]=0;51Testing软件测试网5C6v7@(yW1[qTA5Sd&nu