背景:
做CS架构的客户端应用程序UI自动化测试时,需要用图标的状态来判断程序运行的结果。图标的控件类型为Image。所以需要通过判断图标所在的图片来实现自动化用例中的断言。
解决方案:
首先,需要定位到目标控件的坐标,然后截图,再将截图与期望图片进行比较。
这里主要需要解决的3个点:
- 获取图片控件坐标
- 截图
- 比较图片
经过查询,python系现有模块中pywinauto、Pillow模块即可实现上述功能。
其中pywinauto可以获取控件坐标,Pillow模块可以根据坐标截图,并比较指定图片。
pywinauto实现指定控件的坐标获取
这里主要利用pywinauto框架提供print_control_identifiers()方法,该方法将输出应用程序的控件信息,默认输出到标准输出中,但为了对其处理,重定向标准输出,使得控件信息写入到指定列表内。
PIL实现截图,图片比较
这里主要运用该模块提供的方法,相对win32API,其封装易用性非常好。
最后
以上,就是CS架构的客户端应用程序,对于图片的自动化测试方法
文章知识点与官方知识档案匹配,可进一步学习相关知识Python入门技能树首页概览208061 人正在系统学习中
声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!