我正在探索机器人框架,对网站进行一些烟雾测试,并且必须登录,这将打开一个新窗口。使用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。
答案 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
谢谢你们俩!