大家可以购买《selenium webdriver3.0自动化测试框架实战指南》,这本讲的是ui自动化。关于selenium方面都是学的这本书里面的,写到博客加上自己的一些理解,方便自己忘记的时候翻阅。
selenium使用页面元素的文本定位元素
通过text()函数可以定位到元素文本包含某些关键内容的页面元素。
xpath表达式
(1)xpath=//a[text()=‘新闻’]
(2)xpath=//a[.=‘新闻’]
(3)xpath=//a[contains(text(),‘新闻’)]
(4)xpath=//a[contains(.,‘新闻’)]
(5)xpath=//a[contains(text(),‘新闻’)]/preceding::div
(6)xpath=//a[contains(.,‘新闻’)]/…
表达式(1)和(2)是等价的,都是查找文本内容为"新闻"的链接页面元素,使用的精准匹配方式,也就是说文本内容必须完全匹配,不能多一个字少一个字。第二个xpath语句中使用了一个点(.),这里的点等价于text()函数,都是指代的当前节点的文本内容。
表达式(3)和(4)是等价的,都是查找文本内容包含"新闻"关键字的链接页面元素,使用的是模糊匹配方式,即根据部分文本关键字进行匹配。
表达式(5)和(6)是等价的,都是查找文本内容包含“新闻”关键字的链接页面元素a的上层父元素div,第6个表达式最后使用了两个点(…),它表示选取当前节点的父节点,等价于preceding::div。