浅谈watij疑难

[b][/b]watij的相关疑难问题
[b]问题1:字段没有name,id或者id,name是生成的不能用[/b]
方案1:引用上一层的节点,对本节点的应用
方案2:通过elements().get(int index)的方法可以得到该节点
[b]问题2:隔着frame引用其他的节点报错[/b]
方案:不能隔着frame引用节点,必须将这个frame引用下,再次由这个frame引用所需的节点
[b]问题3: 在引用都没报错的情况下,获得的element为null [/b]
方案1:可能引用了之前的引进的变量,需要再次引用下
实例:building_Frame = (IFrame) mainFrame.frame(id, "tabItemProdBuildIn_Frame");
Div mainpro = buildIn_Frame.div(id, "poOperNewPOWin_DialogSelfDestroy");
Div leftdiv = mainpro.div(id,"mw_tp_outerdiv_prodBuildTabContainerLeft");
Thread.sleep(10000);
IFrame frame = (IFrame) leftdiv.frame(src,"/pms_po/po_create_lefttree.jsp");
Div d1 = frame.div(id, "operation_tree_div");
Form form = d1.form(id, "prodSearchCond");
Div ser = form.div(id, "tr_base");
TextField t1 = ser.textField(name, "base_prod_name"); t1.set(Constant.APPPRO);
ie.waitUntilReady();
Button serach = form.button(name, "Submit");
serach.focus();
serach.click();
ie.waitUntilReady();
[b]问题4:再次引用之前的节点还是获取不到 [/b]
原因:ie浏览器可能获取的节点比程序读取的慢
方案:等待下
实例:int sign = 1;
while (offer.element() == null && sign < 5) { Thread.sleep(2000);
offer =buildIn_Frame.link(text,Constant.MAINPRO);
sign++;}
[b]问题5:click与fireEvent(“onmousedown” ); fireEvent(“oncontextmenu ” )的区别使用 [/b]
使用规律:
Button一般用clilk,link一般用fireEvent,但是二者没有太大区别
另注明:在应用button的时候需要用到button.focus()
这个方法就是将button聚集的意思,以帮助我们在自动测试的时候
看是否获取到相应的button
[b]问题6: 字段没有name,id或者id,name是生成的不能用。但是前面的节点隔着frame[/b]方案:用XPath获取节点
实例:ie.textField(xpath,"//INPUT[@name='stuname']").set("C");
ie.textField(xpath,"\\INPUT[@οnclick='download()']“).set(“”);
[b]问题7:获取一个selectlist的length [/b]
解决途径:selectlist.Options.length
实例:SelectList select1=divEditArea.selectList(name, "callingcountrycode");
int i=select1.options().length();
select1.option(i-1).select();
作用:这样做是为了防止一个selectlist里面,没有相应的值,都取最后一个或者有时都取第一个不能得到相应的结果
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值