【问题标题】:if condition for java sikuli is not working如果 java sikuli 的条件不起作用
【发布时间】:2020-12-01 03:54:24
【问题描述】:

我正在使用 Java-sikuli 编写脚本,并尝试使用 if 条件,如下所示:

if(screen.exists(gameIsInProgress) != null || 
   screen.exists(waitingFormorePlayer) !=null) {
        screen.click(settingsOnGameWindow);
        screen.click(exitRoom);
        screen.click(yes);
}

我正在检查图像是否存在,如果 - 是,然后我单击一些按钮。问题是,即使图像不存在,它也在搜索那个按钮,这会导致测试失败。

【问题讨论】:

    标签: java testing automation sikuli sikuli-x


    【解决方案1】:

    SikuliX 的 RaiMan:

    也许您必须为图像使用更高的分数。 检查 SikuliX IDE 预览功能。

    如果图像(例如 gameIsInProgress)始终可见,但在颜色方面改变了其状态,则可能会发生这种情况。

    【讨论】:

    • 嗨 Raiman,非常感谢您的回答,也许您必须为图像使用更高的分数。 => 我不明白这一点,请您核实一下。如果图像(例如 gameIsInProgress)始终可见,但会根据颜色更改其状态,则可能会发生这种情况。 => 情况并非如此,我尝试了一个图像不可见的情况,它发生在所有 if 条件下。
    • 而不是 exists(gameIsInProgress) 使用 exists(Pattern(gameIsInProgress).similar(0.9))。使用 SikuliX 的预览功能可以找到所需相似度的适当值。
    • Pratiksha Dalal,我猜 Raiman 是在谈论 Sikuli 的特征,称为图像相似性。在哪里可以找到图像相似度 - 按照以下步骤 1. 抓取图像 2. 单击图像 3. 在第二个选项卡(匹配预览)上找到图像下方的滑块 4. 观察 sikuli 在屏幕上“看到”的内容,可能sikuli 发现了与您相似的图像,这对于人眼来说并不那么明显。我希望这会有所帮助!
    猜你喜欢
    • 2012-07-11
    • 1970-01-01
    • 2019-02-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-04-13
    相关资源
    最近更新 更多