1、如果目标元素有id属性,优先使用id定位;
2、元素locator尽可能保证简洁,考虑locator中路径的变化频率,尽量减少后期更新和维护成本;
3、使用xpath时,不要一味的使用‘/’逐层进行选择;合理使用‘/’和‘//’,能简化表达式;
4、尽量使用函数和运算符,如contains(),text(),position()等;运算符包括算数运算符或逻辑运算符等;
以下举例xpath常用语法:
1) xpath=//img[@alt='The image alt text']
2) xpath=//table[@id='table1']//tr[n]/td[n]
3) xpath=//a[contains(text(), 'test')] text属性使用text()
4) xpath=//a[contains(@href, '#id1')]/a[n] 其余属性则使用@属性名
5) xpath=//table[@class= 'style']//th[text()= 'xxx']/../td 其中../表示从子元素逆向定位父元素
6) xpath=//*[text()='right']
7) xpath=//*[starts-with(@href, 'xxx')]
8) xpath=//*[ends-with(@href, 'xxx')]
9) xpath=//*[matchs(text(), 'xxx')] 可使用正则表达式
10) xpath=//input[@name='name1' and @value='yes'] 支持逻辑运算符and/or/not
以下举例css常用语法:
1) css用#表示id属性,如#kw
2) css用.表示class属性,如.slipt
3) css可直接使用标签名称,无任务标识符,如input
4) css通过其他属性定位时写为:css=[name='kwname']
5) css也可通过标签和属性组合定位,如css=[a.text='xxx']