示例:点击应用程序图标后,将显示登录屏幕(login_screen.png
),有时会在登录屏幕之前出现一个确定弹出对话框(ok_btn_dialog.png
),如果确定对话框出现,我想单击确定按钮(ok_btn_dialog.png
),然后继续登录屏幕(login_screen.png
),否则它将从登录屏幕(login_screen.png
)继续。
如何在RobotFramework
中将SikuliLibrary
中的if,Else条件应用于?通过在RIDE上使用这两个图像。
这里有一个答案,但这并不是我的问题的answer。
答案 0 :(得分:3)
有一个Exists
keyword会告诉您屏幕上是否存在图像。 This results的对/错响应,Run Keyword If
keyword可以使用:
*** Settings ***
Library SikuliLibrary
*** Test Cases ***
TC
${exists} Exists ./some_image.png
Run Keyword If "${exists}"=="true" Run True Keyword
... ELSE IF "${exists}"=="false" Run False Keyword
... ELSE Run Error Keyword
这可以作为一个单独的关键字实现,如果存在则单击图片,否则将忽略图片。
*** Settings ***
Library SikuliLibrary
*** Test Cases ***
TC
# Check if button exist and retry for 2 seconds returning false.
Click If Exists ./ok_btn_dialog.png ${2}
Click ./login_screen.png
*** Keywords ***
Click If Exists
[Arguments] ${image} ${timeout}=${0}
${exists} Exists ${image} ${timeout}
Run Keyword If "${exists}"=="true" Click ${image}