Robot Framweork之UI自动化测试---元素定位的4种方式

在Robot Framweork的UI自动化测试中,元素定位主要有四种,即通过id,name,xpath和CSS定位

一、id定位

id就好比一个人身份证,元素在 HTML 页面中的唯一标识符,因此 ID 定位方式是最常用的方式之一,通过 ID 定位元素简单快捷,且定位速度较快。

使用语法:

二、name定位

name就好比一个人的姓名, 元素的名称属性,相对于 ID,Name 属性可能不是唯一的,因此在使用 Name 定位时需要确保不会定位到多个相同 Name 的元素。

使用语法:

三、xpath定位

xpath有绝对路径和相对路径,大多数情况下都用相对路径,绝对路径不利于维护。

1、绝对路径

绝对路径定位使用完整的路径从根节点开始,直接指定元素在 DOM 树中的位置。绝对路径定位是一种较为精确的定位方式,但也较为复杂,容易受页面结构变化的影响。绝对路径以斜杠 / 开头,指定元素的所有父节点直到根节点的路径。

例如:/html/body/div[1]/div[2]/form/input[3], 这个 XPath 表示定位路径为根节点下的第一个 div,然后在这个 div 下的第二个 div,再在第二个 div 下的 form,最后在 form 下的第三个 input 元素 。

2、相对路径

相对路径定位相对于当前节点或当前节点的某个父节点,更灵活且容易维护。相对路径使用双斜杠 // 开头,表示在整个 DOM 树中查找符合条件的元素。

相对路径定位可以找元素本身或者找上级,下面举例说明:

例如://input[@id='username'], 这个XPath 表示查找整个 DOM 树中的所有 input 元素,并且其中的 id 属性等于 "username" 的元素,这个是找元素本身。

例如://input[@id='username']/span, 这个XPath 表示查找整个 DOM 树中的所有 input 元素,并且其中的 id 属性等于 "username" 的元素下的span元素,这个是通过上机找的例子。

在实际测试中,建议选择相对路径定位,并尽量避免过于复杂的绝对路径定位,以保持测试脚本的可维护性和稳定性。

3、布尔值写法

XPath 支持布尔值写法,用于在 XPath 表达式中进行条件判断和逻辑运算。

例如: //span[text()='John Doe' and @class='name'],查找文本内容为 "John Doe",且 class 属性为 "name" 的 元素。

//button[@class='submit' or @class='confirm'],查找 class 属性为 "submit" 或 "confirm" 的

你可能感兴趣的:(Robot,Framework,前端,javascript,html)