web控件定位方法
1. sahi自带的录制工具,alt+双击空白处,录制的可直接使用,此外,摁住ctrl,鼠标放在控件上会出现相应一些属性,当然F12也可以,当自带录制工具出现动态id等的时候,就不能采取这种方法了,此外,有一些重复值,例如有两个“确定”按钮时,这种录制方法也会出错。
2. 利用id、class、value、text或相对位置等定位
#id
@browser.textbox("deptInfoDlg_edPinYin")
#value
@browser.button("确定").click
#title
@browser.link("组织管理").click
#text
@browser.span("组织管理").click
#相对位置,0为外层
@browser.link("组织管理[1]").click
#模糊匹配,in 有多个“确定”按钮,可将所要定位的按钮的div层一层一层写出来,保证找到的是唯一的,否则默认为最外层
#利用正则表达式,.*表示前面有任意个字符
@browser.button("确定").in(@browser.div("/.*业务类别.*刷新类别.*确定/")).click
#(0)表示相对位置最近
#"x-window x-window-plain x-window-dlg"为外层div class
#"ext-mb-text"为内层div class,此层div内仅一个span
@browser.span(0).in(@browser.div("/.*ext-mb-text/").in(@browser.div("/.*x-window x-window-plain x-window-dlg/"))).text
#treeview treeview后的参数表示包含treeview的div , click后的参数为点击路径
@browser.treeview("/.*请选择部门.*取消.*/").click("公司名/集团领导/经理")
#右键单击
@browser.span("公司名").right_click
#mouseover
@browser.link("actAddDeptRightMenu").mouse_over