很早之前寫過一篇介紹sikuli的文章。本文簡單介紹如何在java中使用sikuli進自動化測試。
圖形腳本語言sikuli
?
sikuli?IDE可以完成常見的單擊、右擊、移動到、拖動等鼠標操作,java引用sikuli-script.jar同樣可以執行這些常見的鼠標操作,因此即可方便的編寫java實現識別圖片并模擬點擊/拖動目標控件。
sikuli-script.jar:http://download.csdn.net/download/hqd1986/4557974
將sikuli-script.jar包添加到eclipse中。
然后編寫自動化測試腳本:
?
package com.mypro.sikuli;import org.sikuli.script.*;public class STest {public static void main(String[] args) throws FindFailed, InterruptedException {Screen s = new Screen();//定義圖片存放路徑String imgpath = "D:/java/sikuli/img/";//雙擊桌面chrome瀏覽器圖標s.doubleClick(imgpath+"chrome.png");//輸入urls.type(imgpath+"url.png","www.bing.com");s.click(imgpath+"lianxiang.png");Thread.sleep(2000);//在bing輸入框輸入搜索關鍵字:sikuli,并點擊搜索按鈕s.type(imgpath+"sreach_input.jpg","sikuli");s.click(imgpath+"sreach_button.png");System.out.println("end");}
}
?
我的圖片目錄:
??
執行日志:
[info] Windows utilities loaded. [info] Sikuli vision engine loaded. [log] DOUBLE CLICK on (185,450) [log] CLICK on (426,206) [log] TYPE "www.bing.com" [log] CLICK on (430,239) [log] CLICK on (685,370) [log] TYPE "sikuli" [log] CLICK on (938,371) end
?
如果在執行腳本的時候出現以下錯誤:?Getting?the?VisionProxy.dll:?Can?not?find?dependent?libraries...
把Sikuli?X?的libs目錄添加到系統環境變量path下:
path:
;D:\Program Files (x86)\Sikuli X\libs
?
什么是Sikuli?X? 請參考本文開頭的文字鏈接。
?