小游戏学会Xpath定位,一起通关成为王者!


摘要

我有个副业(免费的,但是要点缘分,毕竟时间不够),刚好在指导一些毕业的程序员找工作。我发现,能力差别体现在后天的努力上,职业发展的差距形成于认知。同时也整理了最近两个月最新的软件测试资源(视频教程,PDF文档,面试题)。

需要这份资料的朋友可以添加我公众号【伤心的辣条】领取 .

先来Xpath定位小游戏地址:
https://liushilive.github.io/css_xpath/

感谢游戏的创建者,该游戏共16关,在浏览器中输入链接进去则可以玩耍,通过玩游戏,可以总结Xpath定位技巧9条:

1、标签类型选择器

根据其标签类型来选择元素,//A 是选择A类型标签所包含的所有元素
如://div 是选择全部

元素。

2、标签属性选择器

选择带有属性的元素,//[@属性=”属性值”] 选择相关属性的元素
如://
[class=“classvalue”] 选择的是所有包含class属性值为classvalue的元素。

3、子选择器

选择某元素的直系子元素,//A/B 是选择所有A元素的所有直系子元素B,//A/* 是选择A元素下的所有任意元素
如://div/input 是选择所有

下的所有子元素

4、子选择器结合属性选择器

如://*[@属性=”属性值”]/A

5、类选择器

根据元素包含(contains)的属性来选择元素,//[contains(@属性, “属性值”)] 选择包含指定属性值的所有元素
如://
[contains(@class, “classvalue”)] 选择包含class属性值为classvalue的所有元素。
根据元素不包含(not)的属性来选择元素,//[not(@属性, “属性值”)] 选择不包含指定属性值的所有元素
如://
[not(@class, “classvalue”)] 选择不包含class属性值为classvalue的所有元素。

6、索引选择器

在指定索引处选择相应的元素:(//A)[索引号]
如:(//div)[3] 选择第3个


选择所有元素中的最后一个A元素:(//A)[last()]
如:(//div)[last()] 选择最后一个

选择所有元素中的倒数第n个A元素:(//A)[last()-n]
如:(//div)[last()-n] 选择倒数第n个

选择同层级下所有元素中的最后一个元素://A/ [last()]
如://div/
[last()] 选择
元素中的最后一个。

7、父选择器

选择当前层级元素的父级元素:…
如://input[@class=”classvalue”]/… 选择该属性的input元素的上一层级元素。
选择当前层级元素的父级元素
如://div[input[@class=”classvalue”]] 选择该属性的input元素的上一层级元素。

8、逻辑或连接符

通过使用“|”逻辑“或”来选择满足条件的任意路径表达式
如://A | // B | //*[@属性=”属性值”] 是选择元素、元素以及满足指定属性的元素。

9、轴定位

选择当前元素后面(following-sibling)所指定的同层级元素
如://A/following-sibling::B 选择的是A元素之后同层级的B元素
选择当前元素前面(preceding-sibling)所指定的同层级元素
如://B/preceding-sibling::A 选择的是B元素之前同层级的A元素

轴表达及说明:

ancestor --选择当前节点的所有先辈(父、祖父等)
parent --选取当前节点的父节点
child --选取当前节点的所有子元素
descendant --选择当前节点的所有后代元素(子、孙等)
following --选取文档中当前节点的结束标签之后的所有节点
preceding --选取文档中欧冠当前节点的开始标签之前的所有节点
following-sibling --选取当前节点之后的所有同级节点
preceding-sibling --选取当前节点之前的所有同级节点

最后送个小技巧

通过浏览器控制台验证Xpath元素定位是否正确(笔者已确认chrome、firefox支持,如果使用其他浏览器大家可以尝试下)

F12开发者工具,在控制台Console输入相关命令来测试语法正确否:测试xpath语法是

$x("your_xpath_selector")

注意:your_xpath_selector 是你的xpath选择器代码,如果选择器代码中带有双引号,需要通过 \ 进行转换,如下:

$x("//*[@id=\"mainBox\"]/main/div[4]/div[2]/div/a/h4")


最后:福利

技术行业,一定要提升技术功底,丰富自动化项目实战经验,这对于你未来几年职业规划,以及测试技术掌握的深度非常有帮助。

金九银十面试季,跳槽季,整理面试题已经成了我多年的习惯!下面有我近几年的收集和整理,整体是围绕着【软件测试】来进行整理的,主体内容包含:python自动化测试专属视频、Python自动化详细资料、全套面试题等知识内容。

不要因为拿8k薪资就自卑惭愧,不要应为拿了20多K薪水就沾沾自喜,不要应为拿了30-45看就故步自封。人生不是为了赚那点薪水,你需要的是打开一份事业。

愿你我相遇,皆有所获! 欢迎关注微信公众号:【伤心的辣条】 免费领取一份216页软件测试工程师面试宝典文档资料。以及相对应的视频学习教程免费分享!

好文推荐:

谈谈从小公司进入大厂,我都做对了哪些事?

普通人学Python自动化有意义吗?

什么样的人适合从事软件测试工作?

猜你喜欢

转载自blog.csdn.net/weixin_50271247/article/details/112972582
今日推荐