机器人框架对于新窗口来说太快了

时间:2016-08-25 19:19:07

标签: automation robotframework selenium2library

我正在探索机器人框架,对网站进行一些烟雾测试,并且必须登录,这将打开一个新窗口。使用Select Window移动到新窗口对我有用,但我通过识别登录的标题来弥合这一变化,并且新窗口不会立即采用该标题,因为它会加载您的登录表单 - 有时这需要半秒钟,有时超过5秒。

我现在正在解决这个问题,让测试睡眠时间长达10年,但肯定有更可靠的方法来确保我可以将目标窗口更改为新窗口,而不是我的测试页面加载时失败并退出。我尝试使用重定向URL作为标识符,但有时它会非常快速地重定向并失败,或者如果没有,那么它会在下次检查时挂起,以便未加载登录字段。我见过像Wait Until Element Is Visible这样的命令,但不幸的是,当我无法定位正在加载的窗口时,这没有帮助......

为此:

*** Test Cases ***
Basic Workflow
    Open Browser To Homepage
    Go To Sign In

*** Keywords ***
Open Browser To Homepage
    Open Browser    ${HOMEPAGE}     ${BROWSER}
    Maximize Browser Window
    Set Selenium Speed      ${DELAY}

Go To Sign In
    Click Button    Sign In
    Sleep   10s
    Select Window   Sign In
    Title Should Be   Sign In

目前使用Selenium2Library。

1 个答案:

答案 0 :(得分:1)

lauda正确地写出了一个用于管理选择窗口的关键字。我找到了Wait Until Keyword Succeeds并为它做了一个关键字等待。

Go To Sign In
    Click Button    Sign In
    Wait Until Keyword Succeeds   20s   3s    Switch To Sign In Page
    Title Should Be   Sign In

Switch to Sign In Page
    Select Window     Sign In

谢谢你们俩!