查看完整版本: Function中如何参数化输入的值

423799223 2008-7-9 15:00

Function中如何参数化输入的值

SystemUtil.CloseProcessByName("Test.exe")                        '运行前关闭测试程序
SystemUtil.Run "c:\Test.exe"                                        '启动运行程序
'说明:sUser为用户名,sPassword为密码
Function sLogin(sUser,sPassword)
    If  Window(text:Test).Exst(2) Then        '判断程序窗口是否出现,如果不出现则写入报告中
            Window(text:Test).WinEdit("object class:=TComboBox").Type  sUser        '设置用户名
            Window(text:Test).WinEdit("object class:=TEdit").Type  sPassword        '设置密码
            Window(text:Test).WinObject("text:=登录").Click                                '点击登录按钮
            If  Window(text:=WeCome).Exst(2) Then        '判断如果WeCome窗口不出现则登录失败,出现则关闭窗口,不管成功或失败都写入报告中
                Window(text:=WeCome).Close
                Reporter.ReportEvent micPass,"登录成功","用户名:" & sUser
            Else
                Window(text:Test).Close
                Reporter.ReportEvent micFail,"登录失败","用户名:" & sPassword
            Endif
    Else
            Reporter.ReportEvent micFail,"没有发现登录窗口","???"       
    End If
End Function

Call sLogin(sUser,sPassword)
'因为使用的是描述性编程,请问我如何参数化这里的用户名和密码呢?
'我的方法是新建一个数组,开始是从文本中读取,用户名放一个文件、密码放一个文件,把读的数据放到数组中去
'然后使用循环调用sLogin,发现这样太麻烦,哪位有好的方法,谢谢

陈能技 2008-7-9 15:22

用DataTable对象可能会简单一点。

423799223 2008-7-9 16:04

我知道在关键字视图中可以使用DataTable进行参数化
在脚本如何使用呢

假装不在 2008-7-9 18:00

:hug:
你为什么不这么做呢,用excel,一个列放用户名,一个列放密码。
哪么读取的时候,只要读取这2个然后放进去就可以了。
你中间的把数据放到数组这一步有点多余。

423799223 2008-7-9 20:26

楼上的兄弟能不能提供一个例子瞧瞧  谢谢了

假装不在 2008-7-9 20:37

:hug:
你自己在论坛找下,关于读取excel的代码。
喂,老大,你是青铜元老哦...你不是扮猪吃老虎吧。

423799223 2008-7-10 09:53

青铜元老又怎么了  我也是才用QTP呀  以前是用LR的
页: [1]
查看完整版本: Function中如何参数化输入的值