本空间所有日志均为原创,如有转载请注明出处!!!!!!! 有需要讨论问题的可加QQ:28005389(上班时间一般都在隐身),邮箱hurh_888@sina.com 共同学习、共同进步

Loadrunner ftp协议的使用

上一篇 / 下一篇  2008-07-17 15:53:49 / 个人分类:loadrunner

Loadrunner ftp协议的使用51Testing软件测试网;AQ%yy.Hn"Cu)Xko

昨天有个网络上的朋友问我,为什么我在使用ftp协议录制CORE FTP LE工具上传文件时,loadrunner捕捉到了事件,但没有生成脚本?51Testing软件测试网'D-B*S1Y~

转载请注明出处:http://www.51testing.com/?41972

说实话我之前也没有使用FTP协议录制脚本的经历,所以就动手试了一下,结果和这位朋友描述的一样,能捕捉到事件,但在Action中不生成脚本,于是我想到了手动编写FTP脚本来完成上传文件这个过程的模拟,具体步骤如下:

*x5uv+~S#^;F3i&};q0

1、 首先要了解loadrunner中几个FTP函数51Testing软件测试网 b%@Fy6a

loadrunner联机帮助文档的索引中,输入FTP,此时你会看到不下50个与ftp有关的函数,想了一下为了解决使用FTP文件上传这个问题,只需要一下几个步骤就可以了:

-r(Uy|,m/Zmx+g7m8B0

第一、  ftp服务器建立连接

`7UpO A~-zL0

第二、  传输文件

2Iu){?'k6M0

第三、  关闭连接51Testing软件测试网8n0_1A2qtx

所以我现在只需要关注与这三个步骤有关的函数就可以了

:YUD/? oX(? uA0

经过挑选终于找到了一下几个函数:

Y3HJg\](u0

第一、  ftp服务器建立连接的函数51Testing软件测试网P$W^2s7r5X@G

      ftp_logon_ex (FTP *ppftp, char *transaction, char *url, LAST);

g(}7g;e [h$ivN as0

      这个函数主要的功能是建立与ftp服务器的连接,其中的参数含义如下:51Testing软件测试网tx)K3t!h2t

      Transaction:为这个连接起一个名字,在这里随便起

-NWr Ts]O|0

      url:ftp://username:password@mailserver:port,指定连接用户名、密码、服务器地址、端口51Testing软件测试网2u lp,p;tp0X(nY

第二、  传输文件的函数

!\ hd Q-W O0

      ftp_put_ex (FTP *ppftp, char *transaction, char *item_list, LAST);

G"vr6h(jT E0

      这个函数主要的功能是指定把本地的某个文件上传到服务器的某个目录下

,V oz Hxl7E0bpJ+u0

      transaction:为这个操作起一个名字,在这里随便起51Testing软件测试网 l6} hWi`.a

      item_list:其中包括

G$y Z:B;Z;`'A0

SOURCE_PATH,指定本地上传文件的路径

2r)Y2U FP&l*K1m0

TARGET_PATH制定要上传到服务器的路径

zshJO;O*{0

ENDITEM- Marks the end of the list.(不好翻译呵呵)51Testing软件测试网"H4ge9Kyy$j

第三、  关闭连接的函数51Testing软件测试网$Y~3yQ7r:D/r

      ftp_logout_ex (FTP *ppftp);

)W.km.p:F C:a&k?0

      这个函数的主要功能是断开FTP链接

RS] U&s*t8z\0APTf0

转载请注明出处:http://www.51testing.com/?4197251Testing软件测试网/x[K~R6D+|zJ5u`

2、 模拟文件上传过程

0}:Q%eE6c"V]1mT(h0

知道了上面的函数我们把代码写一下:51Testing软件测试网9A9x&b(WZ{4l

Action()

9HnN$Wd$f0

{unsigned long *ftp_session=NULL;

o QKn;a[}0[DK0

//建立FTP连接并登录

"i.|z4?F0

 ftp_logon_ex(&ftp_session,"ftpLogon","URL=ftp://root999999@172.16.24.7921",LAST);51Testing软件测试网4gD;C2Ak G"` k

//上传文件到/usr/local51Testing软件测试网Jfud+f\UE\;}$T

ftp_put_ex(&ftp_session, "Ftp_Put",

3p%f/NIWp0

           "SOURCE_PATH=d:\\huruihai.txt",51Testing软件测试网Vp{q L0c

           "TARGET_PATH=/usr/local/huruihai.txt", ENDITEM,51Testing软件测试网/u"?VJ,k/N

          LAST);51Testing软件测试网WZ/~)W8X

//释放FTP连接51Testing软件测试网Cp&i)[ }4{r

  ftp_logout_ex(&ftp_session);51Testing软件测试网{BE!KdE+r:k

return 0;

;jv t t |"d!D4F.{2L b0

}51Testing软件测试网 nK] Pl

运行一次,发现d:\\huruihai.txt已经上传到了服务器的/usr/local/huruihai.txt,OK大功告成!

LN-r d(n?*J9x }T0

好了,基本的结构写出来了,执行脚本,发现可以把指定的文件上传到制定的目录下了,接下来就根据自己实际需要强化脚本就可以了,参数化上传文件、加入事务、集合点,监测上传文件的时间和服务器的性能,强化脚本在这里就不多说了。51Testing软件测试网'UA,{9t$Tog-T1B

 

V zO}|/k0

51Testing软件测试网5~9lp2V8k;}+IW#v/j

转载请注明出处:http://www.51testing.com/?41972

F8s'R nBf*Rjuw0

在这个过程中遇到了如下几个问题:51Testing软件测试网*r:Vx2R!j d6R(t}

A、在生命ftp连接句柄时,我看网上的一些资料中介绍声明称FTP ftp1 = 051Testing软件测试网/f G7?gl kl.T"@

但是这样写会出现语法错误,当我把它修改成unsigned long *ftp_session=NULL;后就没有问题了,其中原因不明

ig2fzw&wv]%|0

B、当使用SSH加密后,使用loadrunner就无法连接成功,这个问题也没搞清楚原因51Testing软件测试网,B_4he6f.Ca9O

3、 遇到的问题:

c"Bx'H"k~m^W0

A、在生命ftp连接句柄时,我看网上的一些资料中介绍声明称FTP ftp1 = 051Testing软件测试网-D(B5k/Y_XP

但是这样写会出现语法错误,当我把它修改成unsigned long *ftp_session=NULL;后就没有问题了,其中原因不明51Testing软件测试网r/p1HS"u$z

B、当使用SSH加密后,使用loadrunner就无法连接成功,这个问题也没搞清楚原因,出现的错误提示是Logon Session failed SSH-1.99-OpenSSH_3.9p151Testing软件测试网2v3IEn8Q1d!g

C、为什么loadrunner能捕捉到事件,但没有生成脚本?

p6c0W7bh T v9\ O%^0

 

I0Da@(B8i{%W0

希望对此了解的朋友给予指点,谢谢!!!!!

$I+M?~ z3a c0

转载请注明出处:http://www.51testing.com/?4197251Testing软件测试网4l D bp;sU/],I


TAG: loadrunner

卖烧烤的鱼测试博客 引用 删除 卖烧烤的鱼   /   2008-08-25 17:40:50
其实主要采用模拟用户登录到 FTP 服务器、传输文件以及注销三部分,如果能补充ftp和其它协议的组合一些信息就更好了
 

评分:0

我来说两句

日历

« 2024-04-28  
 123456
78910111213
14151617181920
21222324252627
282930    

数据统计

  • 访问量: 204018
  • 日志数: 25
  • 图片数: 4
  • 建立时间: 2008-01-24
  • 更新时间: 2009-07-22

RSS订阅

Open Toolbar