2016-10-25 51 views
0

我想在谷歌主頁上打開簡單的gmail鏈接,但圖像路徑沒有被Sikuli檢測到,請幫忙,是的,我正在使用Mac OS系統。這是與我的sikulixapi罐放置有關嗎?我把它放在這裏:爲什麼Sikuli無法找到圖像路徑

/Users/vishalsrivastava/Documents/JARS/SikuliJar/sikulixapi.jar 

無論我想要什麼圖像或什麼路徑,Sikuli總是返回錯誤和異常。我完全困惑。

package sikuli; 

import java.util.concurrent.TimeUnit; 

import org.openqa.selenium.WebDriver; 
import org.openqa.selenium.firefox.FirefoxDriver; 
import org.sikuli.script.*; 

public class TestSikuli { 

    public static void main(String[] args) { 
     WebDriver driver=new FirefoxDriver(); 
     driver.get("http://google.com/"); 
     driver.manage().timeouts().implicitlyWait(30,TimeUnit.SECONDS); 
     Screen s = new Screen(); 
     try{ 
      Pattern gmail=new Pattern("/Users/vishalsrivastava/Documents/workspace/SeleniumTest/imgs/gmail.png"); 
      s.click(gmail); 

     } 
     catch(FindFailed e){ 
      e.printStackTrace(); 
     } 

    } 

} 

See the path of Image file.Still why sikuli is not liking it

What is purpose of ImagesAPi.sikuli ??

回答

0

似乎在這裏你的問題不會是路徑。您可以看到您得到的是Sikuli FindFailed異常,這意味着您正在尋找的圖案在屏幕或區域中找不到。

你必須確保你正在尋找的模式實際上在屏幕上。幾點要檢查的是:

  1. 該模式與您試圖在屏幕上查找的區域完全相似。
  2. 顏色和色調
  3. 定時。也許Sikuli在找到模式之前超時。這可能是因爲屏幕最近已更改,就像如果你只是導航有\

編輯: 如果你想知道知道什麼是Sikuli使用的路徑,你可以把它打印出來像這樣:

System.out.println(ImagePath.getBundlePath()); 
+0

感謝您的回覆。我會試着在這裏解釋我的問題,我是sikuli的新手,所以dam不能解決它,但它似乎在我的eclipse工具sikuli不工作或我不知道的東西。 –

+0

我已更新我的查詢與其他屏幕截圖和代碼請看看和幫助。 –

+0

@priyankasrivastava請參閱我的編輯 –

0

我覺得'尤金S'給出了一些有用的提示,但我想添加一些東西。
您可以使用.focusedWindow()找到焦點位於前面的窗口。
接下來我發現.highlight()有用,因爲它給出了Sikuli在尋找某個圖像時所關注的位置。
我想用它進行一些快速調試。

+0

由於沒有找到模式,我擔心這裏突出顯示不會有幫助。 –