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主要的功能
Squish運行一個服務Squish Server來處理被測程序與腳本之間的通信
腳本由squishrunner工具執行,squishrunner會連接到Squish server。此時squish server會啟動被測程序,注入squish hook,這是一個庫文件,用於實時獲取被測程序的對象,並與squish server通信。有了Squish hook,squish server就可以根據對象的屬性查詢到對象,並代表SquishRunner執行腳本里定義的命令。
所有的通信都是通過網絡套接實現的,所以測試可以在單一的設備上完成,也可以腳本在一台電腦上,被測程序運行在連入同一網絡的其他不同平台或嵌入式設備上。
Squish IDE