51Testing软件测试论坛

标题: 有关脚本回放的问题 [打印本页]

作者: liangtest    时间: 2008-1-21 15:15
标题: 有关脚本回放的问题
各位大侠,偶在录制脚本时,对脚本进行了参数化,在外部建立一个excel文件,有一个字段为creditcard(信用卡号),然后填写了4个信用卡号,在脚本中编写脚本读取外部的excel中的信用卡号,把他们传入到录制脚本的变量creditcard中,可是在回放时提示类型不匹配,跪求各位能够帮忙指点,录制的脚本如下:
Sub Order(CreditCard,Nian,Yue,Mingzhi,Passpord,Passpord_Id)

                Browser("XXXX").Page("XXXXXX").Frame("main_5").WebEdit("OrderInfoInput1:CreditCardNo").Set CreditCard
                Browser("XXXX").Page("XXXXXX").Frame("main_5").WebList("OrderInfoInput1:CreditCardPeri").Select Nian
                Browser("XXXX").Page("XXXXXX").Frame("main_5").WebList("OrderInfoInput1:CreditCardPeri_2").Select Yue
                Browser("XXXX").Page("XXXXXX").Frame("main_5").WebEdit("OrderInfoInput1:CreditCardHold").Set cstr(Mingzhi)
                Browser("XXXX").Page("XXXXXX").Frame("main_5").WebList("OrderInfoInput1:CreditCardCert").Select Passport
                Browser("XXXX").Page("XXXXXX").Frame("main_5").WebEdit("OrderInfoInput1:CreditCardCert").Set Passport_Id
                Browser("XXXX").Page("XXXXXX").Frame("main_5").WebButton("验证信用卡有效性").Click
                Browser("XXXX").Page("XXXXXX").Frame("main_9").WebRadioGroup("OrderInfoInput1:GetTicketType").Select "2"
                Browser("XXXX").Page("XXXXXX").Frame("main_5").WebEdit("OrderInfoInput1:ContactName").Set "test/test"
                Browser("XXXX").Page("XXXXXX").Frame("main_5").WebEdit("OrderInfoInput1:Mobile").Click
                Browser("XXXX").Page("XXXXXX").Frame("main_5").WebEdit("OrderInfoInput1:Mobile").Set "13810101415"
                Browser("XXXX").Page("XXXXXX").Frame("main_5").WebButton("下一步").Click
                Browser("XXXX").Page("XXXXXX").Frame("main_5").WebButton("下一步").Click
                Browser("XXXX").Page("XXXXXX").Frame("main_6").WebButton("下一步").Click
                Browser("XXXX").Page("XXXXXX").Frame("main_10").WebButton("关闭").Click

End Sub

      其中的creditcard就是要传入的变量,在其前面已经定义为数组了 (dim  creditcard(4)),在执行到这句时就提示类型不匹配,(其中的XXXX代替了某些语句)
作者: tiger_86    时间: 2008-1-21 16:45
那你要慢慢的解决了
作者: jinsen    时间: 2008-1-21 18:20
你提到了"填写了4个信用卡号"和"dim  creditcard(4)",这里有问题,在这里的数组运用和Java等不太一样,你用"4个信用卡号"应该这样定义"dim  creditcard(3)",这里的"3"应该是数组的最大下标,而不是数组的最大个数。因此,按你的定义方法的话,数组的最后会有一个"空"元素,那么在赋值的时候就会出现问题了。(以上是正对你目前给出的代码和描述的情况所作的推断)
作者: liangtest    时间: 2008-1-21 18:32
我终于找到问题了,
3#说的是一个,还有一个是:
原来是我在调用这个函数,call Order(CreditCard,Nian,Yue,Mingzhi,Passport,Passport_Id)
写错了,应该是Order(CreditCard(j),Nian(j),Yue(j),Mingzhi(j),Passpord(j),Passpord_Id(j))
作者: jinsen    时间: 2008-1-22 09:49
这个错误还真是不容易发现啊。





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