Advertisement

其中一种自动化方法是用Python编写截图功能

阅读量:

在开展自动化测试的过程中,常常需要借助图片对比的方式来确认特定功能是否运行正常。一般情况下,可以通过 Python 的第三方库 Image 来完成截取图像的操作。然而,在某些情况下,如图片来源于 flash 或其他特殊格式时,使用 Image 截图可能会导致获取到的内容为空。例如,在输入法的使用场景中,其状态栏及部分弹出窗口虽然在桌面上可见,但通过常规方式却无法成功截图。

为解决上述问题,一种可行的方案是首先调用 Windows 操作系统自带的功能,按下 PrintScreen 键对整个屏幕进行截图操作。随后,再对所获取的图像进行进一步处理与截取,从而获得所需的图像内容。

附上代码:

复制代码
    #函数功能:截取某一矩形的屏幕(可以截取flash皮肤,网页的flash)
    #参数:rect--矩形大小,filename--存储文件名,fmt--存储格式,可以为空
    #返回值:成功则真,否则False
    def RectCapturePlus(rect, filename, fmt = None):
    win32api.keybd_event(win32con.VK_SNAPSHOT, 0, 0, 0)
    sleep(1)
    win32api.keybd_event(win32con.VK_SNAPSHOT, 0, win32con.KE

全部评论 (0)

还没有任何评论哟~