UI自动化测试中,如果需要截图方便后续确认操作结果的话,可以利用PIL的ImageGrab进行截图保存。
注意,如果应用python3,下载模块时,需要下载pillow。
pip3 install pillow
下载完成后,首先要引入需要的模块
# screenshot.py
from PIL import ImageGrab
import os
import time
接下来,定义screen方法,包括进行屏幕镜像的截取,创建截屏的存储路径以及图像保存。
def screen(name):
# 截取镜像
png = ImageGrab.grab()
# 创建存储路径
screen_path = os.path.join(os.path.dirname(__file__), 'screen')
if not os.path.exists(screen_path):
os.makedirs(screen_path)
# 保存图片到存储路径
image_name = os.path.join(screen_path, name)
t = time.strftime('%Y%m%d_%H%M%S', time.localtime())
png.save('%s_%s.png' % (image_name, t)) # 文件名name后面加了个时间戳,避免重名
后续调用,引入from screenshot import screen
后,在文件中直接调用screen方法即可。
自我记录,有错误欢迎指正~~
网友评论