Selenium 4相对定位器如何改变您的测试方式?

网页可以包含许多Web元素或GUI元素,例如单选按钮,文本框,下拉菜单,输入等。Selenium自动化测试中的Web定位器用于对页面的Web元素执行不同的操作。 毫不奇怪,作为新的Selenium用户,我们要学习的第一件事是Selenium Locators。

这些定位器是任何Selenium自动化测试框架的基础,无论您进行的测试类型是什么,从单元测试到端到端自动化跨浏览器测试。 使用了多种类型的定位器,例如CSS选择器,XPath,链接,文本,ID等。这是一些用于自动跨浏览器测试的流行定位器。 到目前为止,您可以在Selenium中获得8种类型的定位器。 但是,这个数字将在新的Selenium 4版本中更改。 想知道为什么吗?

好吧,使用Selenium 3.0,每个元素都可以单独访问,因为无法访问相对于附近元素的Web元素。 在这里,Selenium 4(Alpha)中的新定位器可以发挥作用,因为新的定位器方法使您可以基于相对于DOM中其他元素的可见位置来查找附近的元素。

是的! 你没听错。 Selenium 4将推出一个已经计划了很长时间的新定位器,现在称为相对定位器。 在本文中,我们将深入探讨如何使用最新的Selenium 4 Relative Locator进行日常自动化测试。

我们在之前的文章中介绍了Selenium 4可以提供的功能 。 在该帖子本身中,我们暗示我们将在新功能方面进行更多详细说明。 好吧,这是。

下载硒4(Alpha)

毋庸置疑,最常用的Web自动化测试框架Selenium具有特殊的特殊功能,可广泛用于端到端测试,这些功能可提供无与伦比的自动化跨浏览器测试功能。 但是,最近的主要数字版本(即Selenium 3.0)已于3年前于2016年10月发布。尽管目前尚无发布日期,并且Selenium 4尚未正式发布,但您可以通过Selenium 4的Alpha进行先睹为快释放。

首先,您必须从Maven存储库下载Selenium 4 Alpha。 在作为本文的一部分介绍Selenium 4相对定位器功能时,最新版本是4.0.0-alpha-3。 由于这是Selenium的Alpha版本,因此,如果您不想在通过Selenium自动化测试进行验证时使用生产测试套件承担任何风险,建议您切换回稳定版本,即3.141.XX。

Selenium 4相对定位器–方法

到目前为止,Selenium 4相对定位器方法支持withTagName属性的使用。 以下是可在Selenium自动化测试中使用的“相对定位器”选项:

相对定位器

描述

以上

要搜索/定位的Web元素显示在指定元素的上方。

下面

要搜索/定位的Web元素显示在指定元素的下方。

toLeftOf

要搜索/定位的Web元素显示在指定元素的左侧。

toRightOf

要搜索/定位的Web元素显示在指定元素的右侧。

要搜索/定位的Web元素距离指定元素最多50个像素。

这是该实现的屏幕截图,着重介绍了Selenium自动化测试中相对定位器的用法( Source )。

如果您想知道Selenium是如何做到这一点的,那么可以借助名为getBoundingClientRect( )JavaScript方法来实现。 此JavaScript方法允许Selenium使用相对定位器进行Selenium测试来定位元素。

Selenium 4相对定位器–用法

Selenium 4中用于相对定位器的方法已重载,可以将相对WebElement或“按”定位器作为参数。 下面显示的是使用这两个选项进行Selenium自动化测试的相对定位器的示例用法:

WebElement txt_label = driver.findElement(By.cssSelector("label[id='uname']"));
 
WebElement txt_label =  driver.findElement(withTagName("input").toRightOf(txt_label));

String txt_name = driver.findElement(withTagName("input").toLeftOf(By.id("some_button"))
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值