机器人框架 - Focus/Select DropDown 弹出窗口 window
Robot Framework - Focus/Select DropDown popup window
我需要使用 Robot Framework 编写 UI 测试。我在这个网站https://www.cosmote.gr/hub/(网页右上角select英文)模拟用户登录。用户应单击 Login/Register 并出现弹出窗口 window:
popup window
我正在尝试在电子邮件文本字段和密码字段中添加输入文本,然后按下按钮登录。由于我是 Robot Framework 的新手,我不知道如何在弹出窗口 window 中聚焦,因此我的测试失败了 - 它无法在弹出窗口 window.
中找到文本字段
login example
我的代码是:
*** Settings ***
Documentation Present some information about this test suite
Library Selenium2Library
*** Variables ***
${Browser} = ff
${HOME_PAGE} = https://www.cosmote.gr/hub/
${BUTTON_LOGIN} = //*[@id="wcs_header"]/div[5]/div[1]/div[2]/div/div
${VALID_USERNAME} =
${VALID_PASSWORD} =
${PAGE_CONTAINS} = My COSMOTE
${USERNAME_FIELD} = //*[@id="loginIn"]
${PASSWORD_FIELD} = //*[@id="pwdIn"]
${SUBMIT_BUTTON} = //*[@id="loginBtnIn"]
${POPUP} = //*[@id="cosid_md_login"]/div[2]
${FRAME} = idmframeIn
*** Test Cases ***
User Login With Valid Credentials
[Tags] Login
Open Browser ${HOME_PAGE} ${Browser}
Wait Until Element Is Visible ${BUTTON_LOGIN}
Click Element ${BUTTON_LOGIN}
Wait Until Page Contains ${PAGE_CONTAINS}
Select Frame id=${FRAME}
Input text ${USERNAME_FIELD} ${VALID_USERNAME}
Input password ${PASSWORD_FIELD} ${VALID_PASSWORD}
Click Element ${SUBMIT_BUTTON}
Wait Until Page Contains Hello
Close Browser
如何 focus/select 弹出窗口 window 以便找到文本字段和登录按钮元素?
在此先感谢您的帮助!
在 运行 你的例子之后我注意到 window 没有扩展到最大尺寸。这可能会导致搜索栏和 link 重叠。当我添加解决该特定问题的 Maximize Browser Window
关键字时。
由于 Select Frame
引起了问题,并且不需要它,因此将其从脚本中删除。
下面的脚本运行并填充值。由于用户名和密码无效,最终检查因登录失败而未通过。然而,这是意料之中的。
*** Settings ***
Documentation Present some information about this test suite
Library Selenium2Library
Suite Teardown Close All Browsers
*** Variables ***
${Browser} = chrome
${HOME_PAGE} = https://www.cosmote.gr/hub/
# ${BUTTON_LOGIN} = //*[@id="wcs_header"]/div[5]/div[1]/div[2]/div/div
${BUTTON_LOGIN} = id=cosid_md_login
${VALID_USERNAME} = dummy
${VALID_PASSWORD} = dummy
${PAGE_CONTAINS} = My COSMOTE
${USERNAME_FIELD} = //*[@id="loginIn"]
${PASSWORD_FIELD} = //*[@id="pwdIn"]
${SUBMIT_BUTTON} = //*[@id="loginBtnIn"]
#${FRAME} = idmframeIn
*** Test Cases ***
User Login With Valid Credentials
[Tags] Login
Open Browser ${HOME_PAGE} ${Browser}
Maximize Browser Window
Wait Until Element Is Visible ${BUTTON_LOGIN}
Click Element ${BUTTON_LOGIN}
Wait Until Page Contains ${PAGE_CONTAINS}
# Select Frame id=${FRAME}
Input Text ${USERNAME_FIELD} ${VALID_USERNAME}
Input password ${PASSWORD_FIELD} ${VALID_PASSWORD}
Click Element ${SUBMIT_BUTTON}
Wait Until Page Contains Hello
Close Browser
我需要使用 Robot Framework 编写 UI 测试。我在这个网站https://www.cosmote.gr/hub/(网页右上角select英文)模拟用户登录。用户应单击 Login/Register 并出现弹出窗口 window:
popup window
我正在尝试在电子邮件文本字段和密码字段中添加输入文本,然后按下按钮登录。由于我是 Robot Framework 的新手,我不知道如何在弹出窗口 window 中聚焦,因此我的测试失败了 - 它无法在弹出窗口 window.
中找到文本字段login example
我的代码是:
*** Settings ***
Documentation Present some information about this test suite
Library Selenium2Library
*** Variables ***
${Browser} = ff
${HOME_PAGE} = https://www.cosmote.gr/hub/
${BUTTON_LOGIN} = //*[@id="wcs_header"]/div[5]/div[1]/div[2]/div/div
${VALID_USERNAME} =
${VALID_PASSWORD} =
${PAGE_CONTAINS} = My COSMOTE
${USERNAME_FIELD} = //*[@id="loginIn"]
${PASSWORD_FIELD} = //*[@id="pwdIn"]
${SUBMIT_BUTTON} = //*[@id="loginBtnIn"]
${POPUP} = //*[@id="cosid_md_login"]/div[2]
${FRAME} = idmframeIn
*** Test Cases ***
User Login With Valid Credentials
[Tags] Login
Open Browser ${HOME_PAGE} ${Browser}
Wait Until Element Is Visible ${BUTTON_LOGIN}
Click Element ${BUTTON_LOGIN}
Wait Until Page Contains ${PAGE_CONTAINS}
Select Frame id=${FRAME}
Input text ${USERNAME_FIELD} ${VALID_USERNAME}
Input password ${PASSWORD_FIELD} ${VALID_PASSWORD}
Click Element ${SUBMIT_BUTTON}
Wait Until Page Contains Hello
Close Browser
如何 focus/select 弹出窗口 window 以便找到文本字段和登录按钮元素?
在此先感谢您的帮助!
在 运行 你的例子之后我注意到 window 没有扩展到最大尺寸。这可能会导致搜索栏和 link 重叠。当我添加解决该特定问题的 Maximize Browser Window
关键字时。
由于 Select Frame
引起了问题,并且不需要它,因此将其从脚本中删除。
下面的脚本运行并填充值。由于用户名和密码无效,最终检查因登录失败而未通过。然而,这是意料之中的。
*** Settings ***
Documentation Present some information about this test suite
Library Selenium2Library
Suite Teardown Close All Browsers
*** Variables ***
${Browser} = chrome
${HOME_PAGE} = https://www.cosmote.gr/hub/
# ${BUTTON_LOGIN} = //*[@id="wcs_header"]/div[5]/div[1]/div[2]/div/div
${BUTTON_LOGIN} = id=cosid_md_login
${VALID_USERNAME} = dummy
${VALID_PASSWORD} = dummy
${PAGE_CONTAINS} = My COSMOTE
${USERNAME_FIELD} = //*[@id="loginIn"]
${PASSWORD_FIELD} = //*[@id="pwdIn"]
${SUBMIT_BUTTON} = //*[@id="loginBtnIn"]
#${FRAME} = idmframeIn
*** Test Cases ***
User Login With Valid Credentials
[Tags] Login
Open Browser ${HOME_PAGE} ${Browser}
Maximize Browser Window
Wait Until Element Is Visible ${BUTTON_LOGIN}
Click Element ${BUTTON_LOGIN}
Wait Until Page Contains ${PAGE_CONTAINS}
# Select Frame id=${FRAME}
Input Text ${USERNAME_FIELD} ${VALID_USERNAME}
Input password ${PASSWORD_FIELD} ${VALID_PASSWORD}
Click Element ${SUBMIT_BUTTON}
Wait Until Page Contains Hello
Close Browser