wangdongting 发表于 2008-6-24 14:43:34

一个关于参数化的问题

不知道什么问题,觉得完全是照着tutorial来做的亚。
Browser("Welcome: Mercury Tours").Page("Welcome: Mercury Tours").WebEdit("userName").Set "wangxiaoxia"
Browser("Welcome: Mercury Tours").Page("Welcome: Mercury Tours").WebEdit("password").SetSecure "48604fb5eb7877d8bb2a47b1fe46bc46a341"
Browser("Welcome: Mercury Tours").Page("Welcome: Mercury Tours").Image("Sign-In").Click 26,7
Browser("Welcome: Mercury Tours").Dialog("Internet Explorer - Security").WinButton("OK").Click
Browser("Welcome: Mercury Tours").Page("Find a Flight: Mercury").WebList("fromPort").Select DataTable("departure", dtGlobalSheet)
Browser("Welcome: Mercury Tours").Page("Find a Flight: Mercury").WebList("fromMonth").Select "December"
Browser("Welcome: Mercury Tours").Page("Find a Flight: Mercury").WebList("fromDay").Select "29"
Browser("Welcome: Mercury Tours").Page("Find a Flight: Mercury").WebList("toPort").Select "San Francisco"
Browser("Welcome: Mercury Tours").Page("Find a Flight: Mercury").WebList("toMonth").Select "December"
Browser("Welcome: Mercury Tours").Page("Find a Flight: Mercury").WebList("toDay").Select "31"
Browser("Welcome: Mercury Tours").Page("Find a Flight: Mercury").WebRadioGroup("servClass").Select "Business"
Browser("Welcome: Mercury Tours").Page("Find a Flight: Mercury").Image("findFlights").Click 76,14
Browser("Welcome: Mercury Tours").Page("Select a Flight: Mercury_2").Check CheckPoint("check departing text")
Browser("Welcome: Mercury Tours").Page("Select a Flight: Mercury").Image("reserveFlights").Click 53,11
Browser("Welcome: Mercury Tours").Page("Book a Flight: Mercury_2").Check CheckPoint("Book a Flight: Mercury_3")
Browser("Welcome: Mercury Tours").Page("Book a Flight: Mercury_2").Output CheckPoint("price output")
Browser("Welcome: Mercury Tours").Page("Book a Flight: Mercury").WebEdit("passFirst0").Set "wang"
Browser("Welcome: Mercury Tours").Page("Book a Flight: Mercury").WebEdit("passFirst0").Check CheckPoint("check name")
Browser("Welcome: Mercury Tours").Page("Book a Flight: Mercury").WebEdit("passLast0").Set "xiaoxia"
Browser("Welcome: Mercury Tours").Page("Book a Flight: Mercury").WebEdit("creditnumber").Set "123456"
Browser("Welcome: Mercury Tours").Page("Book a Flight: Mercury_2").WebTable("New York to San Francisco").Check CheckPoint("check cost")
Browser("Welcome: Mercury Tours").Page("Book a Flight: Mercury").WebCheckBox("ticketLess").Set "ON"
Browser("Welcome: Mercury Tours").Page("Book a Flight: Mercury").Image("buyFlights").Click 75,8
Browser("Welcome: Mercury Tours").Page("Flight Confirmation: Mercury_2").Check CheckPoint("New York")
Browser("Welcome: Mercury Tours").Page("Flight Confirmation: Mercury").Image("home").Click

出错的地方在'check cost'这个检查点
result说是:
Details
Verification type: String Content. Settings: Exact match - ON; Ignore space - ON; Match case - OFF. Results: Checked 4 cells; Succeeded: 2; Failed: 2
我觉得不是很明白的,价格已经作了参数化了,为什么还是不呢。谢谢高手帮我看一下。。。

[ 本帖最后由 wangdongting 于 2008-6-26 11:18 编辑 ]

caodongjian 发表于 2008-6-25 17:12:54

:Q :Q LZ最好把那一句出错.报错原因加上.方便别人看.

wangdongting 发表于 2008-6-27 10:03:22

运行到这一句时,报错
Browser("Welcome: Mercury Tours").Page("Book a Flight: Mercury_2").WebTable("New York to San Francisco").Check CheckPoint("check cost")

陈能技 发表于 2008-6-27 10:22:52

从测试结果来看,检查了4个单元格,其中有两个单元格的内容与检查点中设置的内容不一致。


推荐新书《QTP自动化测试实践》,适合QTP初学者参考:victory:

rebecca2008 发表于 2008-6-27 15:22:25

你得说明你的检查点中检查的是哪四个单元格?

另外你都哪些地方做了参数化,如果前面的起始地点参数化,那么后面的价格或者你是一个一个查完了写入数据表中,或者是把前面的价格输出,然后后面参数化的时候引用。

wangdongting 发表于 2008-6-27 15:52:34

做参数化的地方:
   departure   depart_flight_price
1   NewYork       270
2   Portland      78
3   Seattl             98
运行在1(NewYork)是可以的,但是到2和3时就发生错误了。。。,请帮忙看一下啊

[ 本帖最后由 wangdongting 于 2008-6-27 15:54 编辑 ]

shangguoli 发表于 2008-6-27 16:12:04

我觉得还是你参数化时,哪里有了问题。你在仔细照着说明做一下。
第一行可以通过,可能是因为你录制脚本时用的就是第一行数据

wangdongting 发表于 2008-6-27 17:19:32

我把price的output的type
由datatable 改为environment,这个问题就没有了。
但是现在又有一个新的问题:
运行1和2都没有任何问题,但是在3时,
也就是在脚本的line5报错,
Cannot identify the specified item of the fromPort object. Confirm that the specified item is included in the object's item collection.
Line (5): "Browser("Welcome: Mercury Tours").Page("Find a Flight: Mercury").WebList("fromPort").Select DataTable("departure", dtGlobalSheet)". 觉得很奇怪,之前都没有出错,为什么到第三次的时候出错了呢

wangdongting 发表于 2008-6-27 17:44:03

奇了怪了,我把 Seattl             98去掉,然后在运行,就发现都是对的,可是加上这个就出现Cannot identify 的错误,:Q

wangdongting 发表于 2008-6-27 17:47:13

:'(

jaunty 发表于 2008-11-25 15:55:46

是因为你录的时候选的是一个值 回放的时候想使用另外的值。这个Web list是popup出来的,所以QTP在过程中识别不了你data table里的值在那个web list里是哪个Item. 你可以把出错的那行对应的datatable里的值换成你录制脚本时选择的那个值。你的回放就可以成功了。
页: [1]
查看完整版本: 一个关于参数化的问题