Squish - GUI Tester

Squish overview

网上查询关于自动化测试工具Squish的资料很少。特别是中文搜索。最近正好在使用这款工具,在使用中总结了一些知识,在这里和大家一起分享下。

Squish是froglogic公司的一款商业自动化工具,几年前好像是有免费的版本使用的,叫Squish/KDE,是针对Qt的自动化测试工具。现在需要买License,才能使用。当然在买之前是可以有一段时间的试用,需要用公司的邮箱注册。试用过后,就只能购买License才能使用。

Squish官网:https://www.froglogic.com/

官网介绍Squish是一个主要用于功能性GUI回归测试的跨平台/跨技术的GUI测试自动化工具。

  Squish is the leading cross-platform/cross-technology GUI test automation tool for functional GUI regression tests.

Squish开发了针对不同平台的API,这些API封装在不同的套件(toolkit)里,在购买Licence时,Sale会询问购买哪个或几个套件,价格是不一样的。具体可以参考另外一篇关于licence的文章。

接下来介绍下Squish主要的功能

•Visual Verifications 图形验证,不仅可以图像像素对比,还可以验证图片中元素所在坐标位置是否正确
•BDD - Behavior-Driven Development & Testing 行为驱动开发测试
•Recording and Playback 录制回放
•Test Verification & Validation 测试验证和校验
•Powerful and Intuitive Test Creation Environment 拥有强大的IDE
•Multiple Real-World Scripting Languages 多脚本语言支持
•Data-Driven Testing 数据驱动测试
•Distributed Batch Testing 分布式批量测试
•Extensive Integration Options 广泛的集成选项,可以与ALM,Jenkins等集成使用,有对应的插件提供
•Object Map & Object Identification Tools 对象匹配工具
•Hybrid Application Testing 多应用程序一起测试
 
Squish工作原理

Squish运行一个服务Squish Server来处理被测程序与脚本之间的通信

脚本由squishrunner工具执行,squishrunner会连接到Squish server。此时squish server会启动被测程序,注入squish hook,这是一个库文件,用于实时获取被测程序的对象,并与squish server通信。有了Squish hook,squish server就可以根据对象的属性查询到对象,并代表SquishRunner执行脚本里定义的命令。

所有的通信都是通过网络套接实现的,所以测试可以在单一的设备上完成,也可以脚本在一台电脑上,被测程序运行在连入同一网络的其他不同平台或嵌入式设备上。

 Squish IDE

 

 

posted on 2016-12-14 11:15  swee632  阅读(5870)  评论(0编辑  收藏  举报

导航