关闭 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:前进和后退使用的是非常少的。
代码示例如下:
# 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公众号:程序员雨果,即可免费领取