栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 系统运维 > 运维 > Linux

Selenium3 + Python3自动化测试系列——窗口截图与关闭浏览器

Linux 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Selenium3 + Python3自动化测试系列——窗口截图与关闭浏览器

窗口截图

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

get_screenshot_as_file()

该方式很简单,通过driver获取该方法,将截图要保存的路径写入就好,首先建立一个Picture文件夹目录,为了方便存储管理截图的图片。代码如下:

当我们运行上述程序时,我们发现有一个Warning警告,告诉我们建议保存图片时用”.png“格式保存,但不影响正常流程保存图片。如下图所示。

Warning警告提示如下:UserWarning: name used for saved screenshot does not match file type. It should end with a .png extension

“type. It should end with a .png extension”, UserWarning)

优化一下用以.png格式保存图片。两次保存皆成功!

save_screenshot()

save_screenshot()使用方法与上述get_screenshot_as_file()差不多。我们直接来看实例。代码如下:

get_screenshot_as_png和get_screenshot_as_base64

这两个平时并不常用,大家可大体了解一下。get_screenshot_as_png是获取二进制数据流,get_screenshot_as_base64是获取base64编码原始数据,实际工作实践中如遇到再总结整理。

关闭浏览器

WebDriver提供了两种quit()和close()方法,quit()是退出相关的驱动程序和关闭所有窗口,close()是用来关闭当前窗口。例多窗口的处理,在用例执行的过程中

打开了多个窗口,我们想要关闭其中的某个窗口,这时就要用到close()方法进行关闭了。

我们举个栗子看一下,close()与quit()有什么区别。代码如下:

上述代码运行结果可看出close()只关闭了最开始打开的一个window,后面打开的两个仍在。如下图所示:

大家可以动手试试。亲自实践一下记忆更加深刻哦~~~

最后多说一句,小编是一名python开发工程师,这里有我自己整理了一套最新的python系统学习教程,包括从基础的python脚本到web开发、爬虫、数据分析、数据可视化、机器学习等。想要这些资料的可以关注小编,并在后台私信小编:“01”即可领取。

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/468676.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号