Selenium 4.0有新技能啦,你GET了吗

2021年4月26日 362点热度 0人点赞 0条评论

图片

出品|51Testing软件测试网


图片
题记


身处IT饭圈文化的你,对于Selenium这位老朋友自然非常熟悉,如今Selenium 4.0带着它的新技能再一次叩响了web自动化的大门。


自2019年4月Selenium 4发布第一个Alpha版本以来,一直受到业内广泛关注。虽说官方对于Selenium 4.0的最终发布版本迟迟悬而未决,但这并不妨碍开发人员和自动化框架爱好者们对其新增特性进行探究,大家仍可以通过下载最新的Alpha Selenium 4版本(Selenium-4.0.0a7)来体验一番。 

Python Selenium 4涉及以下新增功能:

(1)Web元素相对定位器

‘Relative Locators’ for locating web elements.

(2)支持Chrome Loadstools协议(模拟地理位置,模拟网络环境)

Support for Chrome Loadstools Protocol.

(3)支持浏览器操作–在Windows及选项卡之间切换

Browser Manipulation – Switching between Windows or Tabs.

下面我们以Selenium for Python的Alpha Release-7(被吹捧为最新的Alpha版本)为例,逐一了解Python Selenium 4的新功能以及其在测试中的使用场景。

图片
Web元素相对定位器

Python Selenium 4中新增了元素相对定位功能,该功能与“with_tag_name”元素属性相绑定,实现了相对定位方法(relative locators),该方法也被称为“友好定位符”。

Python中的相对定位指的是定位那些位于指定web元素附近的元素或元素集。“附近”所指参见如下描述:

图片

图片
应用场景DEMO_1,上下相对

(1)打开百度产品大全链接

http://www.baidu.com/more/

(2)分别定位第一个板块标签元素“新上线新!”

图片

以及最后一个板块标签元素“软件工具”。

图片

(3)通过above,below进行中间元素的相对定位

如图所示,通过相对定位方法,我们希望能够成功定位到以下6个元素。

图片

图片

(4)打印输出所有符合条件的相对元素

完整代码实现如下:

图片

核心代码为:

web_driver.find_elements(with_tag_name("h3").above(elem_2).below(elem_1))

(左右滑动查看完整代码)

运行结果:

图片

可以看到通过find_elements(with_tag_name("XXX").above(元素A).below(元素B)) 成功定位到了相对元素A和元素B间的一系列tag_name匹配上的所有元素。

......
本文为51Testing软件测试网
第六十一期电子杂志内容
剩余精彩内容请点击下方 阅读原文查看

图片

推荐阅读

点击阅读☞测试人,面试逃不过的灵魂三问

点击阅读☞测试中这些奇怪的问题你见过吗?

点击阅读☞新人如何做好功能测试,看这几点就够了

点击阅读☞211本科大佬的真实面试经历:测试人要不要去外包公司?

点击阅读☞2020年应聘华为测试岗三轮面试经历分享

图片
“阅读原文”一起来充电吧!

图片

83610Selenium 4.0有新技能啦,你GET了吗

这个人很懒,什么都没留下

文章评论