LoadRunner录制FTP脚本

来源:互联网 发布:用户上下级数据库设计 编辑:程序博客网 时间:2024/04/30 23:01

文章转载于:http://www.cnblogs.com/dahui4266/archive/2012/03/29/2424057.html


在LR中用它自带的FTP协议去录制FTP工具(例如cuteFTP等)的下载或上传时,虽然可以看到LR的录制条有捕获到东西,但是脚本里却什么都没有,这时录制无效时就需要自己手动去写脚本了.

下面是脚本,里面加了详细的注释,大家可以看看.因为只是示范,所以里面没有加集合点和事务,也没有做参数化. 

复制代码
 1 Action() 2 { 3     //定义FTP对象 4     FTP ftp1 = 0; 5  6     //建立连接并登录 7     //这其中需要修改的部分是username:password@IPAddress 8     //username:password 不做多的说明,大家都知道 9     //IPAddress:这里可以写IP地址,也可以写成域名,如www.test.com10     ftp_logon_ex(&ftp1,"FtpLogon", 11             "URL=ftp://username:password@IPAddress", 12             LAST);13     //下载FTP上的文件到本地指定目录14     //SOURCE_PATH:是指FTP上文件对应的目录,一定要指定一个确定存在的文件对象15     //TARGET_PATH:下载的目的地址.这里要确定该路径存在,同时要指定文件名(可以和FTP上的文件名不一致).16     //性能测试时,一般会把源文件名参数化,目标文件名使用源文件名的参数+唯一序列号,这样方便验证下载是否成功17     //MODE:下载的模式,有二进制和ASCII这2种方式,系统默认的是二进制,避免有时下载的文件被损坏18     ftp_get_ex(&ftp1,"Get_Files", 19           "SOURCE_PATH=/2项目组活动/0710.rar", 20           "TARGET_PATH=e:\\Tools\\Dowload\\07101.rar", 21           "MODE=BINARY", 22           ENDITEM , 23     LAST); 24 25     //上传FTP上的文件到本地指定目录26     //PASSIVE:是指由客户端主动去连接服务端.27     //一般来说,电脑都有防火墙,没有单独设置过,防火墙是不允许服务器端来主动连接客户端的,所以这里一般注明是客户端连接服务端28     //更多关于PASSIVE的解释大家可以去google下29     ftp_put_ex(&ftp1,"Put_Files", 30           "SOURCE_PATH=e:\\Tools\\Dowload\\07101.rar", 31           "TARGET_PATH=/2项目组活动/07102.rar", 32           "MODE=BINARY",33           "PASSIVE=TRUE", 34           ENDITEM , 35     LAST); 36 37     lr_think_time(5);38     //退出登录39     ftp_logout_ex(&ftp1);40 41     return 0;42 }
复制代码

 具体步骤如下:

1、  首先要了解loadrunner中几个FTP函数

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

第一、   与ftp服务器建立连接

第二、   传输文件

第三、   关闭连接

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

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

第一、   与ftp服务器建立连接的函数

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

       这个函数主要的功能是建立与ftp服务器的连接,其中的参数含义如下:

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

       url:ftp://username:password@mailserver:port,指定连接用户名、密码、服务器地址、端口

第二、   传输文件的函数

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

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

       transaction:为这个操作起一个名字,在这里随便起

       item_list:其中包括

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

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

ENDITEM - Marks the end of the list.(不好翻译呵呵)

第三、   关闭连接的函数

       ftp_logout_ex (FTP *ppftp);

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

2、  模拟文件上传过程

知道了上面的函数我们把代码写一下:

复制代码
 1 Action() 2  3 { 4  5      unsigned long *ftp_session=NULL; 6     ftp_logon_ex(&ftp_session,"ftp_logon","URL=ftp://192.168.0.70:21",LAST); 7     ftp_put_ex(&ftp_session, "Ftp_Put", 8  9             "SOURCE_PATH=d:/huruihai.txt",10 11            "TARGET_PATH=/coreftplite/huruihai.txt", ENDITEM,            LAST);12 13 //释放FTP连接14 15    ftp_logout_ex(&ftp_session);16 17  return 0;18 19 }
复制代码

 

运行一次,发现d:\huruihai.txt文件已经成功上传到FTP服务器E:\tools\coreftplite目录下,OK大功告成!

注意:FTP设置时设置的根目录为E:\tools\

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

 

在这个过程中遇到了如下几个问题:

A、 在生命ftp连接句柄时,我看网上的一些资料中介绍声明称FTP ftp1 = 0 ;

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

B、 当使用SSH加密后,使用loadrunner就无法连接成功,这个问题也没搞清楚原因

3、  遇到的问题:

A、 在生命ftp连接句柄时,我看网上的一些资料中介绍声明称FTP ftp1 = 0 ;

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

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

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

0 0
原创粉丝点击
热门问题 老师的惩罚 人脸识别 我在镇武司摸鱼那些年 重生之率土为王 我在大康的咸鱼生活 盘龙之生命进化 天生仙种 凡人之先天五行 春回大明朝 姑娘不必设防,我是瞎子 教育网注册报名的用户名忘了怎么办 艺术生校考通过文化没过本线怎么办 想做主持人 但不是播音专业怎么办 微信登录版本最低登录不上怎么办 所录微课的视频声音小是怎么办 电脑开机黑屏只有光标在闪怎么办 联想家悦重装系统时驱动缺失怎么办 ps做到一半电脑重启了怎么办 宝宝起风疹怎么办 要注意的问题 惠普笔记本刚换的显卡又坏了怎么办 电脑装驱动时不注意点了跳过怎么办 刚抱回来的小猫不吃饭怎么办 三年级小孩字认的太少怎么办 孩子写字手出汗怎么办用什么笔壳 墙壁被小孩用彩色笔画花了怎么办 传图识字里有些字识别不了怎么办 一岁四个月宝宝智力发育迟缓怎么办 小打架受伤对方家长不配合怎么办 宝宝要上幼儿园了家长该怎么办 断奶涨奶怎么办又能防止乳房变形 孩子在幼儿园被小朋友打了怎么办 孩子在幼儿园被小朋友咬了怎么办 孩子被同学打了家长该怎么办? 孩子把同学打了打人家长该怎么办 孩子和同学发生矛盾家长该怎么办 孩子同学给孩子要东西家长该怎么办 如果遇到不讲理的孩子和家长怎么办 孩子调皮又被老师留校了怎么办 孩子拼音f和sh发音不清怎么办 自己在家生的孩子怎么办出生证明 在家念地藏经招来众生不走怎么办 家是济宁孩子上学想在济南上怎么办 高一孩子成绩严重下滑家长怎么办 商铺租客不交租金又不搬走怎么办 考试试卷找不到了明天要交怎么办 8个月宝宝不爱吃蔬菜泥怎么办 5个月的宝宝拉肚怎么办 一岁宝宝大便拉不出来怎么办 八个月宝宝便秘拉不出来怎么办 10个月宝宝大便拉水怎么办 4个月的孩子大便拉水怎么办