51Testing软件测试论坛

 找回密码
 (注-册)加入51Testing

QQ登录

只需一步,快速开始

微信登录,快人一步

手机号码,快捷登录

查看: 4856|回复: 19
打印 上一主题 下一主题

[原创] 终于搞定了,分享代码

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2006-6-9 17:35:06 | 只看该作者 回帖奖励 |正序浏览 |阅读模式
在各位论坛朋友的帮助下,我终于如期搞定了这个CASE。
大概内容是,建立日志文件,从配置文件中读取参数,并将相关参数赋值到QTP的脚本中,调用外部TCL程序发包验证,最后写日志。

此过程感谢论坛里的各种精华帖,以及各位朋友,xiaonan斑竹。


'Creat  log file
Dim LOGFile, fso, MyFile

LOGFile="C:\Log.txt"
Set fso = CreateObject("Scripting.FileSystemObject")
'Whether judging file exists or not
If fso.FileExists(LOGFile) = False Then
          Set MyFile = fso.CreateTextFile(LOGFile, True)
           MyFile.Close
    end if

'Reading  parameter  from  config file
Dim CONFIGFile,objFSO,strText
Const ForReading = 1
CONFIGFile="C:\config.txt"
Set objFSO = CreateObject("Scripting.FileSystemObject")
Set objTextFile = objFSO.OpenTextFile(CONFIGFile, ForReading)
strText = objTextFile.ReadALL
objTextFile.Close
Execute strText
'Split the "Lan_Start_IP"
tmp1 = Split(Lan_Start_IP, ".")
lanip1 = tmp1(0)
lanip2 = tmp1(1)
lanip3 = tmp1(2)
lanip4 = tmp1(3)
'Split the "Wan_Start_IP"
tmp2 = Split(Wan_Start_IP, ".")
wanip1 = tmp2(0)
wanip2 = tmp2(1)
wanip3 = tmp2(2)
wanip4 = tmp2(3)

Browser("NETGEAR Router").Page("NETGEAR Router").Frame("contents").Link("Firewall Rules").Click
Browser("NETGEAR Router").Page("NETGEAR Router").Frame("formframe").WebButton("Add").Click
Browser("NETGEAR Router").Page("NETGEAR Router").Frame("formframe_2").WebList("service_list").Select GW_SERVICE
Browser("NETGEAR Router").Page("NETGEAR Router").Frame("formframe_2").WebList("fwout_action").Select GW_ACTION
Browser("NETGEAR Router").Page("NETGEAR Router").Frame("formframe_2").WebList("fwout_laniptype").Select  LanMode
Browser("NETGEAR Router").Page("NETGEAR Router").Frame("formframe_2").WebEdit("lan_start_ip1").Set lanip1
Browser("NETGEAR Router").Page("NETGEAR Router").Frame("formframe_2").WebEdit("lan_start_ip2").Set lanip2
Browser("NETGEAR Router").Page("NETGEAR Router").Frame("formframe_2").WebEdit("lan_start_ip3").Set lanip3
Browser("NETGEAR Router").Page("NETGEAR Router").Frame("formframe_2").WebEdit("lan_start_ip4").Set lanip4
Browser("NETGEAR Router").Page("NETGEAR Router").Frame("formframe_2").WebList("fwout_waniptype").Select WanMode
Browser("NETGEAR Router").Page("NETGEAR Router").Frame("formframe_2").WebEdit("wan_start_ip1").Set wanip1
Browser("NETGEAR Router").Page("NETGEAR Router").Frame("formframe_2").WebEdit("wan_start_ip2").Set wanip2
Browser("NETGEAR Router").Page("NETGEAR Router").Frame("formframe_2").WebEdit("wan_start_ip3").Set wanip3
Browser("NETGEAR Router").Page("NETGEAR Router").Frame("formframe_2").WebEdit("wan_start_ip4").Set wanip4
Browser("NETGEAR Router").Page("NETGEAR Router").Frame("formframe_2").WebList("fwout_logging").Select Log_Mode
Browser("NETGEAR Router").Page("NETGEAR Router").Frame("formframe_2").WebButton("Apply").Click

'Send the packet by  IXIA,the rule would  to be functioning normally.
SystemUtil.Run "tclsh.exe","main.tcl","C:\ixia\","open"
wait 10

If Browser("NETGEAR Router").Dialog("Microsoft Internet Explorer").exist Then
Browser("NETGEAR Router").Dialog("Microsoft Internet Explorer").WinButton("OK").Click
Browser("NETGEAR Router").Page("NETGEAR Router").Frame("formframe_2").WebButton("Cancel").Click
'If  warnning windows  will display ,write log file with " add runle failure"
        Set MyFile = fso.OpenTextFile(LOGFile, 8, True)
        MyFile.WriteLine("")
        MyFile.WriteLine(" " & Cstr(Now) & " ---------------------------------------------------------")
        MyFile.WriteLine("LOG Information!")
        MyFile.WriteLine("Add rule failure!")
        MyFile.Close
        Browser("NETGEAR Router").Page("NETGEAR Router").Frame("formframe_3").WebButton("Apply").Click
               else

'Write the  log, add rules success.
Set MyFile = fso.OpenTextFile(LOGFile, 8, True)
MyFile.WriteLine("")
MyFile.WriteLine(" " & Cstr(Now) & " ---------------------------------------------------------")
MyFile.WriteLine("LOG Information!")
MyFile.WriteLine("add rule success!")
MyFile.Close
End If
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏
回复

使用道具 举报

该用户从未签到

20#
发表于 2009-8-20 17:51:19 | 只看该作者
不错啊
回复 支持 反对

使用道具 举报

该用户从未签到

19#
发表于 2009-8-20 15:56:32 | 只看该作者
好坟!
回复 支持 反对

使用道具 举报

该用户从未签到

18#
发表于 2009-8-20 15:42:07 | 只看该作者
回复 支持 反对

使用道具 举报

该用户从未签到

17#
发表于 2009-8-20 15:12:53 | 只看该作者
把写日志的功能作为一个Function来使用,这样比较方便。
回复 支持 反对

使用道具 举报

  • TA的每日心情
    开心
    2015-5-13 15:39
  • 签到天数: 1 天

    连续签到: 1 天

    [LV.1]测试小兵

    16#
    发表于 2009-8-19 13:11:41 | 只看该作者
    没有人解答吗?
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    开心
    2015-5-13 15:39
  • 签到天数: 1 天

    连续签到: 1 天

    [LV.1]测试小兵

    15#
    发表于 2009-8-18 14:46:26 | 只看该作者
    还有个问题:
    config.txt是自己手写的吧。

    我在里面写了2个地址:
    lan_ip:192.168.1.12
    wan_ip:10.40.3.12
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    开心
    2015-5-13 15:39
  • 签到天数: 1 天

    连续签到: 1 天

    [LV.1]测试小兵

    14#
    发表于 2009-8-18 14:45:06 | 只看该作者
    执行会出错。。。。。。。。。。。。。。。。
    Execute strText--------------------->执行提示“语句未结束”
    'Split the "Lan_Start_IP"
    tmp1 = Split(Lan_Start_IP, ".")
    lanip1 = tmp1(0)-------------------->提示“下标溢出”
    lanip2 = tmp1(1)
    lanip3 = tmp1(2)
    lanip4 = tmp1(3)
    'Split the "Wan_Start_IP"
    tmp2 = Split(Wan_Start_IP, ".")
    wanip1 = tmp2(0)
    wanip2 = tmp2(1)
    wanip3 = tmp2(2)
    wanip4 = tmp2(3)
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    13#
    发表于 2009-5-16 21:01:02 | 只看该作者
    study share thx
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    12#
    发表于 2007-11-19 15:16:21 | 只看该作者
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    奋斗
    2022-7-13 15:22
  • 签到天数: 1 天

    连续签到: 1 天

    [LV.1]测试小兵

    11#
    发表于 2007-11-19 11:06:08 | 只看该作者
    nothing new except read/write txt file
    and use the function split,arrange the string to an array
    any way thanks for your sharing
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    10#
    发表于 2007-11-19 10:48:08 | 只看该作者
    ding and up
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    9#
    发表于 2007-11-16 15:46:05 | 只看该作者
    谢谢楼主的无私精神,楼主能不能说说上诉代码在QTP中正确运行需要注意什么,以及怎样才能保证正确运行啊!
    上述代码直接在QTP运行通不过。
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    8#
    发表于 2007-11-16 09:24:06 | 只看该作者
    呵呵,lz的代码不够通用啊。
    config文件通过Execute strText 来赋值也太危险了点。
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    7#
    发表于 2007-11-15 17:14:20 | 只看该作者
    虽然还看不明白.但还是要顶的
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    6#
    发表于 2007-11-15 16:58:35 | 只看该作者
    学习
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    5#
    发表于 2007-11-15 16:25:20 | 只看该作者
    强人啊 。这个是什么意思啊?
    能不能讲讲啊
    初学不知道这段代码的一些函数是什么东西啊??
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    4#
    发表于 2006-6-14 17:11:23 | 只看该作者
    谢谢楼主的无私!也顶一下!
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    3#
    发表于 2006-6-12 17:54:48 | 只看该作者
    顶一下
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    2#
    发表于 2006-6-10 01:02:20 | 只看该作者
    坚决鼓励!希望大家都能够共享自己的经验,共同进步!
    回复 支持 反对

    使用道具 举报

    本版积分规则

    关闭

    站长推荐上一条 /1 下一条

    小黑屋|手机版|Archiver|51Testing软件测试网 ( 沪ICP备05003035号 关于我们

    GMT+8, 2024-11-16 15:25 , Processed in 0.087637 second(s), 28 queries .

    Powered by Discuz! X3.2

    © 2001-2024 Comsenz Inc.

    快速回复 返回顶部 返回列表