Sikuli(在墨西哥維喬印第安人的語言里是”上帝之眼”的意思)是由美國麻省理工學(xué)院開發(fā)的一種最新編程技術(shù),使得編程人員可以使用截圖替代代碼,從而簡化代碼的編寫流程。從它研究方向上看,是一種編程技術(shù),但是該技術(shù)還可以用于進行大規(guī)模的程序測試,腳本程序編寫使用的是python語言。
Sikuli是一個開放源碼的最初的用戶界面設(shè)計組織 在麻省理工學(xué)院的研究項目 。現(xiàn)在是保持并進一步 協(xié)調(diào)與開源社區(qū)開發(fā)的Sikuli實驗室在美國科羅拉多州博爾德大學(xué)。這是支持的,部分由國家科學(xué)基金會獎IIS-0447800,廣達電腦的一部分的TParty項目。Sikuli 的MIT許可證下發(fā)布的 。
安裝教程:
Sikuli 告訴我們目前只有32位的版本,不過這個版本應(yīng)該也可以運行在32位與64的windows系統(tǒng)下。但是,是有前提條件地:
1、請確保你已經(jīng)安裝java 6 JRE 32位版本(如果是java 7 或者是64位JRE 那是不被支持的)
2、請確定你已經(jīng)卸載的先前的sikuli版本(尤其是0.10.x版本)
3、請確保在你安裝 JRE 或 卸載舊版本的sikuli 后已經(jīng)重新啟動了系統(tǒng)。
我的安裝路徑:I:\Program Files (x86)\Sikuli X
安裝完成后先不在不要運行,因為他還有點小毛病,把Sikuli X R930這個文件解壓,然后得到一個SIKULI-IDE 的目錄,把SIKULI-IDE目錄下的所有文件替換Sikuli X下的所有文件。(這種做法有點2了。┳鲞@一步的目的是r930關(guān)聯(lián)文件修復(fù)了了最近的bug ,所以替換r905(有問題版本)文件關(guān)聯(lián)。希望官方進快對下載版本修復(fù),在你看到這篇文章再去下載安裝時不用這么麻煩了。
界面介紹:
菜單欄與工具欄非常簡單,下面介紹一下這幾個按鈕是干嘛用的
屏幕截圖(Take screenshot):點擊該按鈕,進入屏幕截圖狀態(tài),拖拽輔助線選取需要截取的界面元素,釋放鼠標(biāo)左鍵的同時,自動將該截圖插入到編輯區(qū)中光標(biāo)當(dāng)前位置。使用快捷鍵 Ctrl+Shift+2(Command+Shift+2)也可激活截圖狀態(tài),以完成對于彈出菜單、下拉框一類的控件的實時截圖。該快捷鍵亦可通過主菜單 File->Preferences 進行自定義。
插入圖片(Insert image):除直接截圖外,用戶也可通過點擊該按鈕導(dǎo)入已有的 PNG 格式圖片文件。
建立屏幕區(qū)域(Create region):點擊該按鈕,進入屏幕區(qū)域選擇狀態(tài),拖拽定位十字線選取屏幕區(qū)域。釋放鼠標(biāo)左鍵,即可將當(dāng)前選中區(qū)域的屏幕坐標(biāo)信息插入到編輯區(qū)中。
運行(Run):點擊執(zhí)行當(dāng)前腳本?旖萱I為 Ctrl+R(Command+R)。
慢速運行(Run in slow motion):點擊后以較慢的速度執(zhí)行當(dāng)前腳本,以紅色圓形外框顯式標(biāo)識每一次圖像查找定位動作,便于程序調(diào)試中進行焦點追蹤?旖萱I為 Ctrl+Alt+R(Command+Alt+R)。
左側(cè)側(cè)邊欄中分類列出了部分常用函數(shù),點擊函數(shù)名可快速將其插入到編輯區(qū),若該函數(shù)需截圖作為參數(shù),則自動轉(zhuǎn)入屏幕截圖狀態(tài)。下方的狀態(tài)欄可用于查看當(dāng)前行號,與行首 Tab 縮進的層級 ( 列號 )。
右邊區(qū)域上半部分為腳本編輯區(qū)域,我們的自測化測試腳本就是在這個區(qū)域編寫完成。
下半部分為提示信息,不管運行成功與失敗,都會給出相應(yīng)的提示信息。