1、id定位
find_element_by_id("") #通过id来定位元素
在HTML中,id是唯一的,通过id但部分元素可能没有id或id为随机值。
2、name定位
find_element_by_name("") #通过name来定位元素
3、class定位
find_element_by_class_name("") #通过class来定位元素
4、tag定位
find_element_by_tag_name("") #通过tag来定位元素
5、link定位
find_element_by_link_text("") #通过link来定位元素
6、partial link定位
find_element_by_partial_link_text("") #通过元素标签对之间的部分文字进行元素定位
7、XPath定位(UI自动化应用最普遍的)
下面列出了最有用的路径表达式:
nodeName 选取此节点的所有子节点
/ 从根节点选取
// 从匹配选择的当前节点选择文档中的节点,而不考虑它们的位置
. 选取当前节点
… 选取当前节点的父节点
@ 选取属性
下面XPath的几种元素定位方法
(1)绝对路径定位
find_element_by_xpath("/html/body/div[2]/div[2]/div[5]/div[1]/div/form/span[2]/input")
(2)利用元素定位(与前六种方法类似)
#利用元素属性进行定位
find_element_by_xpath("//input[@id='**']")
find_element_by_xpath("//input[@name='**']")
find_element_by_xpath("//input[@class='**']")
find_element_by_xpath("//input[@type='**']")
#利用元素层级属性进行定位,相对路径 #根据class属性唯一值,一层一层定位到元素
find_element_by_xpath("//div[@class='**'])/table/tbody/tr/td/div")
#利用逻辑运算符进行定位
find_element_by_xpath("//input[@id='**' and @name='**']")
find_element_by_xpath("//input[@id='**' or @name='**']")
#利用contains包含方法进行定位,查找classname属性下,classname中包含name的元素
find_element_by_xpath("//classname[contains(@classname,'name')]")
#利用starts-with,使用开始位置元素进行定位
find_element_by_xpath("//input[starts-with(@name,'vaule')]")
#利用ends-with,使用结束位置元素进行定位
find_element_by_xpath("//input[ends-with(@name,'vaule')]")
#利用text()进行元素定位
find_element_by_xpath("//input[text(),'百度']")
#其它方法 #string-length()、substring、substring-before()、substring-after()
8、CSS_selector定位
CSS选择器可以更灵活的选择空间的任意属性,且CSS定位速度比XPath定位快。
find_element_by_css_selector(".**") #通过class定位,CSS中class选择器以"."来定义
find_element_by_css_selector("#**") #通过id定位,CSS中id选择器以"#"来定义
find_element_by_css_selector("div") #通过标签名定位
find_element_by_css_selector("[name='**']") #通过name进行定位
find_element_by_css_selector("td > div") #通过父标签,查找子元素中标签名为div的所有元素
最后:下方这份完整的软件测试视频教程已经整理上传完成,需要的朋友们可以自行领取【保证100%免费】
软件测试面试文档
我们学习必然是为了找到高薪的工作,下面这些面试题是来自阿里、腾讯、字节等一线互联网大厂最新的面试资料,并且有字节大佬给出了权威的解答,刷完这一套面试资料相信大家都能找到满意的工作。