51Testing软件测试论坛
标题:
录制的对象是个变量时如何解决?
[打印本页]
作者:
mowandao1985
时间:
2010-3-4 17:10
标题:
录制的对象是个变量时如何解决?
以下是我的一个录制脚本:
Browser("Quote List - MYRO Electronic").Page("Quote List - MYRO Electronic").Frame("mainFrame").WebCheckBox("checked[]").Set "ON"
Browser("Quote List - MYRO Electronic").Page("Quote List - MYRO Electronic").Frame("mainFrame").WebButton("Order Check").Click
Browser("Quote List - MYRO Electronic").Page("Quote List - MYRO Electronic").Frame("mainFrame_2").Link("1003044854").Click
Browser("1003044854(Quote) MYRO").Page("1003044854(Quote) MYRO").Frame("item_browse").WebButton("Modify...").Click
Browser("FPC Price Change").Page("FPC Price Change").WebEdit("fpc_unit_price").Set "33"
Browser("FPC Price Change").Page("FPC Price Change").WebEdit("test_unit_price").Set "22"
Browser("FPC Price Change").Page("FPC Price Change").WebEdit("photo_fee").Set "44"
Browser("FPC Price Change").Page("FPC Price Change").WebEdit("test_setup_fee").Set "3"
Browser("FPC Price Change").Page("FPC Price Change").WebButton("Confirm").Click
Browser("1003044854(Quote) MYRO").Page("1003044854(Quote) MYRO").Frame("common_browse").Link("Quote Detail").Click
Browser("1003044854(Quote) MYRO").Page("Q1003044854(Quote) MYRO").WebButton("Change To Order").Click
Browser("1003044854(Quote) MYRO").Page("admin Batch Operation").WebButton("Make Order").Click
Browser("1003044854(Quote) MYRO").Dialog("Microsoft Internet Explorer").WinButton("确定").Click
Browser("1003044854(Quote) MYRO").Page("Page").WebEdit("paid_amount").Set "555"
Browser("1003044854(Quote) MYRO").Page("Page").WebButton("Submit").Click
Browser("1003044854(Quote) MYRO").Dialog("Microsoft Internet Explorer").WinButton("确定").Click
Browser("1003044854(Quote) MYRO").Page("P1003044854(Order) MYRO").WebButton("Print").Click
其中“1003044854”订单号在回放的时候是变的,因为回放一次它就会选择不同的订单号,
我改如何设置才能认脚本顺利运行?
作者:
sakuragi0
时间:
2010-3-4 22:05
用描述性编程
作者:
lamuda
时间:
2010-3-4 22:29
Browser("Quote List - MYRO Electronic").Page("Quote List - MYRO Electronic").Frame("mainFrame_2").Link("1003044854").Click
看看这个link还有什么其他的属性可用
作者:
zhengpeipei
时间:
2010-3-5 09:21
路过
作者:
mowandao1985
时间:
2010-3-5 10:38
如下图所示,每次回放Item都在变,如果我用一个变量代替的话运行时,会说“找不到对象”,
请问个位大虾这个问题可以解决吗,该如何解决?
作者:
Re_play
时间:
2010-3-5 10:58
在页面第一次出现的 把这个link的ID属性抓下来,然后在后面的应用中用描述性编程
如果前面不曾出现这个ID,那只好从数据库中查
作者:
mowandao1985
时间:
2010-3-5 14:15
就楼上所说也不能解决问题啊,是可以从value属性中取得唯一id,
然后通过id到数据库中查找到对应的订单号,但是回放一次就会出项一个新的订单号。
而在这里,订单号是一个对象而不是属性,所以当订单号变后,你回放时就会出错,
说该对象不在对象库中。
这种情况如何解决呢?
作者:
yujie6832
时间:
2010-3-5 15:01
方法还是有不少的,但是我不知道怎么用文字描述,呵呵。。。我用的是对象库的方式
作者:
liuxl
时间:
2010-3-5 16:20
用对象库方式实现
作者:
feiyunkai
时间:
2010-3-8 14:57
'描述性编程可解决这个问题:
link_name="1003044854" '因为没有Link("1003044854")对象的属性截图,所以假设innertext能够唯一确定LINK
new_title=link_name&"(Quote) MYRO"
Browser("Quote List - MYRO Electronic").Page("Quote List - MYRO Electronic").Frame("mainFrame_2").Link
("innertext:="&link_name).Click
'将所有包含订单号的页面使用描述性编程,同时子对象都要使用描述性编程,例如:
Browser("1003044854(Quote) MYRO").Page("Q1003044854(Quote) MYRO").WebButton("Change To Order").Click '假设WebButton的name属性值为Change To Order 则可修改为:
Browser("title:="&new_title).Page("title:="&new_title).WebButton("name:=Change To Order").Click
[
本帖最后由 feiyunkai 于 2010-3-8 14:58 编辑
]
作者:
mowandao1985
时间:
2010-3-17 15:16
谢谢,楼上,问题已经解决。
作者:
zhengpeipei
时间:
2010-3-17 16:48
路过
欢迎光临 51Testing软件测试论坛 (http://bbs.51testing.com/)
Powered by Discuz! X3.2