Python+selenium实现浏览器基本操作详解

发布时间:2024年01月19日

关闭 driver 启动的浏览器
上一章节文末,我们介绍了关于两种关闭浏览器的方式,这里不做过多的复述。(实在是这一章节的内容太少了)

在 selenium 中,提供了两种关闭 driver 启动的浏览器的方式:

close() 方法:该方法可以关闭浏览器,但是它关闭的只是浏览器的窗口,由 driver 启动的浏览器的进程依然还在,会占用一定的资源。
quit() 方法:该方法同样可以关闭浏览器,但是它在关闭浏览器的窗口的同时,也会 kill 掉 driver 启动的浏览器的进程。
ps:以上两种方法,close() 方法适合在我们启动浏览器结束了一个用例的场景之后,仍需执行其他的自动化测试用例的时候使用;而 quit() 方法则适合在已经执行完所有用例之后使用。

代码示例如下:

# coding:utf-8

import time

from selenium import webdriver

# chrome_driver = "/Users/workspace/driver/chromedriver"

# driver = webdriver.Chrome(executable_path=chrome_driver)

driver = webdriver.Chrome()

driver.get("https://blog.csdn.net/")

time.sleep(1)

driver.quit()

运行结果如下:

浏览器最大化与设置浏览器窗口大小
在我们的测试过程中,使用一些基于图像或者坐标辅助工具的时候,就会需要浏览器在每次测试的时候都保持着最大化,以便于能够在同一个分辨率下进行图像的比对、使用做点进行的点选等等。所以接下来就看看如何将浏览器最大化与设置特定的分辨率大小。


浏览器最大化
使用 maximize_window() 方法将浏览器最大化,代码示例如下:

# coding:utf-8

import time

from selenium import webdriver

# chrome_driver = "/Users/workspace/driver/chromedriver"

# driver = webdriver.Chrome(executable_path=chrome_driver)

driver = webdriver.Chrome()

time.sleep(1)

driver.maximize_window()

driver.get("https://blog.csdn.net/")

time.sleep(1)

driver.quit()

运行结果如下:

这就是一个最大化的操作功能。


设置浏览器窗口大小
都是最大化的场景可能会出现图像、坐标定位不精确的情况,所以当我们希望能够在同一浏览器大小的情况下去运行用例,这样就会比较容易进行图像比对的结合,从而提升灵活性;或者也想测试一下能够在不同的浏览器大小场景下,访问我们的测试站点。对测试页面进行截个图、兼容性是否正常等等等等…

使用 "set_window_size()" 方法来设置窗口的大小。 代码示例如下:

# coding:utf-8

import time

from selenium import webdriver

# chrome_driver = "/Users/workspace/driver/chromedriver"

# driver = webdriver.Chrome(executable_path=chrome_driver)

driver = webdriver.Chrome()

time.sleep(1)

driver.set_window_size(360, 480)

time.sleep(1)

driver.maximize_window()

driver.get("https://blog.csdn.net/")

time.sleep(1)

driver.quit()

运行结果如下:

浏览器的前进、后退与刷新页面

PS:前进和后退使用的是非常少的。

  • 使用 back() 方法进行浏览器页面的后退。
  • 使用 forword() 方法进行浏览器页面的前进。
  • 使用 refresh() 方法进行浏览器页面的刷新。

代码示例如下:

# coding:utf-8

import time

from selenium import webdriver

# chrome_driver = "/Users/workspace/driver/chromedriver"

# driver = webdriver.Chrome(executable_path=chrome_driver)

driver = webdriver.Chrome()

driver.maximize_window()

driver.get("https://blog.csdn.net/weixin_42250835?type=blog")

time.sleep(2)

driver.get("https://blog.csdn.net/")

time.sleep(2)

driver.back()

time.sleep(1)

driver.forward()

time.sleep(1)

driver.refresh()

time.sleep(1)

driver.quit()

?运行结果如下:

总结:

感谢每一个认真阅读我文章的人!!!

作为一位过来人也是希望大家少走一些弯路,如果你不想再体验一次学习时找不到资料,没人解答问题,坚持几天便放弃的感受的话,在这里我给大家分享一些自动化测试的学习资源,希望能给你前进的路上带来帮助。

文档获取方式:

加入我的软件测试交流群:1007119548免费获取~(同行大佬一起学术交流,每晚都有大佬直播分享技术知识点)

这份文档,对于想从事【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴我走过了最艰难的路程,希望也能帮助到你!

以上均可以分享,只需要你搜索vx公众号:程序员雨果,即可免费领取

文章来源:https://blog.csdn.net/2301_81967703/article/details/135682536
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。