51Testing软件测试论坛

标题: 求助QTP中The statement contains one or more invalid function arguments.错... [打印本页]

作者: k521_    时间: 2012-11-26 19:43
标题: 求助QTP中The statement contains one or more invalid function arguments.错...
脚本源码:
  1. Dialog("登录").Activate
  2. Dialog("登录").WinEdit("代理名称:").Set "mercury"
  3. Dialog("登录").WinEdit("密码:").SetSecure "50b18fb995b78cd2ccd0154def5ca799e4c36ae7"
  4. Dialog("登录").WinEdit("密码:").Type  micReturn
  5. Window("航班预订").ActiveX("MaskEdBox").Type "1212112"
  6. Window("航班预订").ActiveX("MaskEdBox").Type  micBack
  7. Window("航班预订").ActiveX("MaskEdBox").Type "2"
  8. Window("航班预订").WinComboBox("起点:").Select DataTable("p_Item", dtGlobalSheet)
  9. Window("航班预订").WinComboBox("终点:").Select DataTable("p_Item1", dtGlobalSheet)
  10. Window("航班预订").WinButton("FLIGHT").Click
  11. Window("航班预订").Dialog("航班表").WinList("从").Select RandomNumber(0, 100)
  12. Window("航班预订").Dialog("航班表").WinButton("确定").Click
  13. Window("航班预订").WinEdit("名称:").Set "ggg"
  14. Window("航班预订").WinRadioButton("商务舱").Set
  15. Window("航班预订").WinButton("插入订单(I)").Click
  16. Window("航班预订").Close
  17. wait 2

复制代码
错误描述:在飞机订票系统中,使用随机数选择“航班表”总是有错误提示框内容是“The statement contains one or more invalid function arguments.”到现在没解决,求助!!谢谢!
作者: xjwldlover    时间: 2012-11-27 09:48
本帖最后由 xjwldlover 于 2012-11-27 09:54 编辑

查一条重要信息,错误的行数是哪一行,目测是第11行。
错误信息是说,该表达式存在一个或多个错误的函数参数,如果是这一行的话,需要给 数字前面加一个“#”号,例如
Obj.Select "#3"
作者: 泰然    时间: 2012-11-27 10:08
WinList(xx).Select 可以有2种参数,1是选项的值,比如“ABB航班”,2是选项的序号,比如第2个选项,要注意第2个要写WinList(xx).Select 1,因为index是从0开始计数,第2个选项的index是1。如果超过index的选项,程序报错。

你这里写的是RandomNumber(0,100),意思是从0到100中随机取一个作为index,那么你就要保证你所用的WinList必须有101个选项,否则当随机数结果比较大时,WinList选择时报错。
作者: k521_    时间: 2012-11-27 20:39
回复 3# 泰然


    谢谢,你说的很对!很感谢
作者: k521_    时间: 2012-11-27 20:40
回复 2# xjwldlover


    谢谢你!
作者: 涵程琳    时间: 2014-10-10 14:02
[size=2][url=forum.php?mod=redirect&goto=findpost&pid=2893164&ptid=880664][color=#999999]泰然 发表于 2012-11-27 10:08[/url][/size]
WinList(xx).Select 可以有2种参数,1是选项的值,比如“ABB航班”,2是选项的序号,比如第2个选项,要注意 ...

这个问题用了好长时间才解决··· 谢谢你了
作者: 涵程琳    时间: 2014-10-10 14:09
[size=2][url=forum.php?mod=redirect&goto=findpost&pid=2893164&ptid=880664][color=#999999]泰然 发表于 2012-11-27 10:08[/url][/size]
WinList(xx).Select 可以有2种参数,1是选项的值,比如“ABB航班”,2是选项的序号,比如第2个选项,要注意 ...

还不太明白, 我修改了数字还是有时会报错···可以在具体说明一下吗
作者: TinaGao1219    时间: 2014-10-10 14:46
涵程琳 发表于 2014-10-10 14:09
还不太明白, 我修改了数字还是有时会报错···可以在具体说明一下吗

点击Flights button后, 出现的航班条数是不一定的, 所以你这里不能指定RandomNumber是多少, 要先获取出有几条可以选, 假如是n, 再确定RandomNumber是从0到n-1




欢迎光临 51Testing软件测试论坛 (http://bbs.51testing.com/) Powered by Discuz! X3.2