一、xpath
1、查找某个特定的节点或者包含某个指定的值的节点
案例1:/bookstore/book[1]:选取bookstore子元素的第一个book元素
或
案例2:/bookstore/book[last()]:选取bookstore子元素的最后一个book元素
案例3:/bookstore/book[last()-1]:选取bookstore子元素的倒数第二个book元素
案例4:/bookstore/book[position()<3]:选取最前面的两个属于bookstore元素的子元素的book元素
案例5://title[@lang]:选取所有拥有名为lang的属性的title元素
案例6://title[@lang=‘eng’]:选取所有title元素,且这些元素拥有值为eng的lang元素
2、选择未知节点
案例1:* 匹配任何元素节点 //* 选取文档中的所有元素
案例2:@* 匹配任何属性的节点
案例3:node() 匹配任何类型的节点
案例4:/html/node()/meta/@*:选择html下面任意节点下的meta节点的所有属性
案例5://meta[@*]:选取所有带有属性的meta元素
3、选取若干路径
案例1://head/script |//head/meta:选取head元素的所有script和meta元素
案例2://script |//meta 选取文档中所有script和meta元素
案例3:/html/body/script |//meta:选取属于html元素的body元素的所有script元素,以及文档中的所有meta
4、补充
案例1://*[text()=“x’x’x”] 全部//title/text() 本内容是xxx的元素
案例2://*[starts-with(@name,"re")] 属性以xxx开头的元素
案例3://*[contains(@attribute,”xxxxx”)] 属性中含有xxx的元素
案例4: //*[@attribute1=value1 and @attribute2=value2] 同时有两个属性值的元素
二、css选择器
1、定义: CSS 中,选择器是一种模式,用于选择需要添加样式的元素。计算机能够通过css选择器定位到相应元素,我们在编写自动化测试脚本的时候很多时候是在不断地找到css选择器。
三、css选择器语法
1、通过伪类名、id、标签名定位
案例1:.foot-async-script:选择class="oot-async-script"的所有元素
案例2:#css_result 选择id="css_result"的所有元素
案例3:*:选取所有元素
案例4:p:选取所有<p>元素