【问题标题】:Sikuli is failing on image click because not able to findSikuli 在图像点击上失败,因为无法找到
【发布时间】:2020-04-25 10:26:04
【问题描述】:

我尝试了多种方法,但在尝试单击图像时仍然出现错误。 我的代码如下:

public void sikuli() throws FindFailed, Exception {
        driver.switchTo().frame(driver.findElement(By.cssSelector("iframe[title='data visualization']")));

     Pattern pattern = new Pattern("lightsolution/Screenshots/C2.PNG").similar((float) 0.7);
     Screen screen = new Screen();
     try {

    screen.click(pattern); 

    }catch (FindFailed e) {
         e.printStackTrace();
     }
     driver.switchTo().defaultContent();
     }

它运行成功,但我删除了捕获的图像并尝试创建新图像。现在它不适用于许多不同的捕获图像。

尝试使用 screen.click(screen.wait(open,10));也尝试过

if(screen.find(pattern)!=null){ 
 screen.mouseMove(pattern); 
 screen.click(pattern); 

错误:

FindFailed: can not find P(C:/Selenium/workspace/lightsolution/C2.PNG) S: 0.7 in S(0)[0,0 1366x768]
  Line 2189, in file Region.java

 at org.sikuli.script.Region.handleFindFailedShowDialog(Region.java:2189)
 at org.sikuli.script.Region.handleFindFailed(Region.java:2134)
 at org.sikuli.script.Region.wait(Region.java:2546)
 at org.sikuli.script.Region.find(Region.java:2205)
 at org.sikuli.script.Region.getLocationFromTarget(Region.java:3067)
 at org.sikuli.script.Region.click(Region.java:3534)
 at org.sikuli.script.Region.click(Region.java:3519)

我正在使用的依赖项:

    groupId com.sikulix/groupId
    artifactIdsikulixapi/artifactId
    version1.1.0/version

任何帮助将不胜感激。

【问题讨论】:

    标签: selenium sikuli


    【解决方案1】:

    试试这个-

    1. 尝试从 Sikuli IDE 获取图像。
    2. 更改每个图像后刷新并清理您的项目。
    3. 尝试给出图像的整个绝对路径而不是相对路径,以检查图像是否正在获取 识别与否。
    4. 在点击模式之前检查您是否正确切换到帧。
    5. 在切换帧和点击模式之间等待。
    6. Sikui 是基于图像的,因此对于不同的计算机分辨率,您需要不同的图像。
    7. 检查您的笔记本电脑端口(执行时充电器、耳机等)没有连接任何东西 - 这对我处理 FindFailed 异常有帮助。

    希望这会有所帮助。

    【讨论】:

    • 谢谢,我会试试的。
    猜你喜欢
    • 2020-03-05
    • 2013-01-18
    • 2016-07-16
    • 2018-05-18
    • 1970-01-01
    • 2018-10-07
    • 2017-02-16
    • 2021-12-23
    • 1970-01-01
    相关资源
    最近更新 更多