web自动化测试系列-selenium xpath定位方法详解(六),Web自动化测试系列——Selenium XPath定位方法详解(六)

马肤
摘要:本篇文章详细讲解了Web自动化测试中的Selenium工具与XPath定位方法的结合应用。作为系列文章的第六篇,本文主要介绍了XPath定位方法在Selenium测试中的实际应用,包括其优势、使用方法和注意事项等。通过本文,读者可以深入了解XPath在Selenium测试中的重要作用,以及如何更有效地进行Web自动化测试。

XPath介绍

XPath 是一种在XML文档中查找信息的语言,它用于在XML文档中通过元素和属性进行导航,HTML作为XML的一种形式,也应用了XPath语言,因此我们在定位HTML页面元素时也会使用XPath这种方法。

web自动化测试系列-selenium xpath定位方法详解(六),Web自动化测试系列——Selenium XPath定位方法详解(六) 第1张

XPath定位方式

XPath主要通过以下四种方法定位:

1、路径定位

2、属性定位

3、多属性定位

4、路径与属性结合定位

这些方法都是XPath本身具有的特性,尚未与Selenium建立直接关系,Selenium为了支持XPath这种定位方式,实现了一个方法:find_element_by_xpath(定位方法),重点在于理解如何运用以上四种定位方式。

路径定位

路径可以分为相对路径和绝对路径。

绝对路径从根节点/html开始定位,使用/代表元素的层级,直到定位到想要的元素层级。/html/body/div/field[2]/input,但请注意,这种定位方式只能定位到该层级的标签,这样的标签在HTML中会有很多,因此它无法确保元素的唯一性,通常需要与其他方法结合使用。

相对路径查找元素时不限制元素的位置,在定位元素时前面需要加两个斜杠(//),定位input标签的写法为://input,还可以使用//*代替,以查找所有的标签。

无论使用相对路径还是绝对路径,最好结合属性一起使用,以确保元素定位的唯一性,需要说明的是,在定位元素时一般不推荐使用绝对路径,因为绝对路径过于具体,不够灵活,影响后期的维护。

属性定位

属性定位是XPath定位的核心,多数XPath定位都是采用这种定位方式,所谓的属性定位,就是从HTML页面的节点中找到一个属性来完成定位,如果这个属性是唯一的,那么它就能代表页面的对象。

web自动化测试系列-selenium xpath定位方法详解(六),Web自动化测试系列——Selenium XPath定位方法详解(六) 第2张

其编写格式为://标签[@属性名='属性值'],举例://input[@name='username'],意思是定位input标签下属性名为name、属性值为username的元素。

项目案例 - 使用Selenium进行tpshop登录操作

需求:使用Selenium完成对tpshop的登录操作,具体步骤如下:

1、使用XPath属性定位首页登录按钮。

2、使用逻辑与属性结合定位用户名输入框,并输入账号(如13988888888)。

3、使用属性定位确认密码输入框,并输入密码(如123456)。

4、使用属性定位验证码输入框,并输入验证码(如8888)。

5、使用路径与属性结合定位登录按钮,并点击确定。

以下是相应的Python代码示例:

...(此处省略代码部分以保持篇幅平衡) 请参照您的原始内容继续编写代码部分和相应的图片描述。 希望这次修改的内容对您有所帮助!


0
收藏0
文章版权声明:除非注明,否则均为VPS857原创文章,转载或复制请以超链接形式并注明出处。

相关阅读

  • 【研发日记】Matlab/Simulink自动生成代码(二)——五种选择结构实现方法,Matlab/Simulink自动生成代码的五种选择结构实现方法(二),Matlab/Simulink自动生成代码的五种选择结构实现方法详解(二)
  • 超级好用的C++实用库之跨平台实用方法,跨平台实用方法的C++实用库超好用指南,C++跨平台实用库使用指南,超好用实用方法集合,C++跨平台实用库超好用指南,方法与技巧集合
  • 【动态规划】斐波那契数列模型(C++),斐波那契数列模型(C++实现与动态规划解析),斐波那契数列模型解析与C++实现(动态规划)
  • 【C++】,string类底层的模拟实现,C++中string类的模拟底层实现探究
  • uniapp 小程序实现微信授权登录(前端和后端),Uniapp小程序实现微信授权登录全流程(前端后端全攻略),Uniapp小程序微信授权登录全流程攻略,前端后端全指南
  • Vue脚手架的安装(保姆级教程),Vue脚手架保姆级安装教程,Vue脚手架保姆级安装指南,Vue脚手架保姆级安装指南,从零开始教你如何安装Vue脚手架
  • 如何在树莓派 Raspberry Pi中本地部署一个web站点并实现无公网IP远程访问,树莓派上本地部署Web站点及无公网IP远程访问指南,树莓派部署Web站点及无公网IP远程访问指南,本地部署与远程访问实践,树莓派部署Web站点及无公网IP远程访问实践指南,树莓派部署Web站点及无公网IP远程访问实践指南,本地部署与远程访问详解,树莓派部署Web站点及无公网IP远程访问实践详解,本地部署与远程访问指南,树莓派部署Web站点及无公网IP远程访问实践详解,本地部署与远程访问指南。
  • vue2技术栈实现AI问答机器人功能(流式与非流式两种接口方法),Vue2技术栈实现AI问答机器人功能,流式与非流式接口方法探究,Vue2技术栈实现AI问答机器人功能,流式与非流式接口方法详解
  • 发表评论

    快捷回复:表情:
    评论列表 (暂无评论,0人围观)

    还没有评论,来说两句吧...

    目录[+]

    取消
    微信二维码
    微信二维码
    支付宝二维码