文章详情

短信预约-IT技能 免费直播动态提醒

请输入下面的图形验证码

提交验证

短信预约提醒成功

Selenium控制浏览器的常用方法有哪些

2023-06-05 00:19

关注

小编给大家分享一下Selenium控制浏览器的常用方法有哪些,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!

Selenium怎么来的?

Selenium这个词,是化学元素硒(Se)的意思。在软件测试领域,它是绝对的自动化测试开源项目的标杆。取这个名字也是有讲究的,在当时乃至如今的软件测试领域,QTP(UFT)占有率非常高。Quick Test Professional是Mercury公司开发的,自然就是汞(Hg)。在生物学,研究发现硒对汞有拮抗作用,也就是硒克汞。Selenium取名的用意不言而喻。

Selenium控制浏览器的常用方法有哪些

Selenium控制浏览器的操作

Selenium是一个用于Web应用程序测试的工具。Selenium测试直接运行在浏览器中,就像真正的用户在操作一样。支持的浏览器包括IE(7, 8, 9, 10, 11),Mozilla Firefox,Safari,Google Chrome,Opera等。

这个工具的主要功能包括:测试与浏览器的兼容性——测试你的应用程序看是否能够很好得工作在不同浏览器和操作系统之上。测试系统功能——创建回归测试检验软件功能和用户需求。支持自动录制动作和自动生成 .Net、Java、Perl等不同语言的测试脚本。

有时候我们希望能让浏览器以某种尺寸打开,让访问页面在这种尺寸下运行,或者控制浏览器进行后退与前进操作等等。

今天主要介绍一下浏览器控制的一些常用属性和方法,他们大多集中在selenium.webdriver.remote.webdriver类中。不管是用哪种浏览器,他们都继承自remote.webdriver类,用的方法属性都是相同的。

下面举个几个控制浏览器的例子。

一、控制浏览器窗口大小

有时候我们希望能以某种浏览器尺寸打开,让访问的页面在这种尺寸下运行。例如可以将浏览器设置成移动端大小(480* 800),然后访问移动站点,对其样式进行评估;WebDriver提供了set_window_size()方法来设置浏览器的大小。

Selenium控制浏览器的常用方法有哪些

二、设置休眠时间

由于打开百度网址后,页面加载需要几秒钟,所以最好等到页面加载完成后再继续下一步操作。

Selenium控制浏览器的常用方法有哪些

三、控制浏览器前进后退

在使用浏览器浏览网页时,浏览器提供了后退和前进按钮,可以方便地在浏览过的网页之间切换,WebDriver也提供了对应的back()和forward()方法来模拟后退和前进按钮。下面通过例子来演示这两个方法的使用。

Selenium控制浏览器的常用方法有哪些

四、页面刷新

有时候页面操作后,数据可能没及时同步,需要重新刷新。

Selenium控制浏览器的常用方法有哪些

五、页面截图

自动化用例是由程序去执行的,因此有些时候打印的错误信息并不十分明确。如果在脚本执行出错的时候能够对当前窗口截图保存,那么通过图片就可以非常直观的看出出错的原因。WebDriver提供了截图函数get_screenshot_as_file()来截取当前窗口:

Selenium控制浏览器的常用方法有哪些

值得注意的是,当使用窗口截屏功能时,图片的扩展名必须是png!!

六、关闭退出浏览器

退出有两种方式,一种是close;另外一种是quit。

close用于关闭当前窗口,当打开的窗口较多时,就可以用close关闭部分窗口;

quit用于结束进程,关闭所有的窗口。

Selenium控制浏览器的常用方法有哪些

总结:

先列举几个常见的属性:

current_url: 返回当前浏览器的url

title: 返回当前页面title

current_window_handler:返回当前窗口的句柄,这在多窗口切换的时候会用到

window_handlers: 返回当前浏览器的所有窗口的句柄。

以下是常见的控制浏览器的方法:

get(url): 加载指定的网页

back()/forward(): 对应于浏览器的向前向后按钮

implicitly_wait(time): 隐式等待,在元素被找到前的等待时间,time的单位是秒。它的作用域是全局的,一个session只用设置一次,任意元素如果在指定时间内没有被找到则抛错。会用单独一篇来介绍元素等待的话题,在这里就不详细解释了

close(): 关闭当前的窗口

quit(): 关闭整个浏览器,所有的窗口都会关闭

refresh(): 刷新网页

get_screenshot_as_file(filename): 保存浏览器的截图到一个png文件, 这里要注意filename需要是一个完整的路径,例如/Users/jack/Downloads/screenshot.png.

set_window_position(x,y,windowHandle='current'): x,y的单位是像素,设置浏览器的位置。get_window_position()则可以获得浏览器当前的位置

set_window_size(width,height, windowHandle='current'): width, height的单位是像素,设置浏览器的长宽。get_window_size()可以获得浏览器的尺寸

maximize_window(): 最大化窗口

以上是“Selenium控制浏览器的常用方法有哪些”这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注编程网行业资讯频道!

阅读原文内容投诉

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

软考中级精品资料免费领

  • 历年真题答案解析
  • 备考技巧名师总结
  • 高频考点精准押题
  • 2024年上半年信息系统项目管理师第二批次真题及答案解析(完整版)

    难度     813人已做
    查看
  • 【考后总结】2024年5月26日信息系统项目管理师第2批次考情分析

    难度     354人已做
    查看
  • 【考后总结】2024年5月25日信息系统项目管理师第1批次考情分析

    难度     318人已做
    查看
  • 2024年上半年软考高项第一、二批次真题考点汇总(完整版)

    难度     435人已做
    查看
  • 2024年上半年系统架构设计师考试综合知识真题

    难度     224人已做
    查看

相关文章

发现更多好内容

猜你喜欢

AI推送时光机
位置:首页-资讯-后端开发
咦!没有更多了?去看看其它编程学习网 内容吧
首页课程
资料下载
问答资讯