我的要求是,点击窗口中的按钮(父窗口),它必须打开一个新窗口(弹出窗口,子窗口),我为此编写了一个测试用例。
但问题是当单击父窗口上的按钮时,我的脚本失败并在报告/日志中显示为:
"最后一个索引没有新窗口。请使用' @ {ex} = |列出Windows' +新的 窗口触发器+'选择窗口| $ {}恩'找到它。"
下面是我的测试用例中使用的userdefined关键字之一,它在Robot Framework中失败:
Move To Chat Page
Click Button Continue to ChatPage>>
Select Window new
Set Selenium Implicit Wait 6s
Click Button //input[@type='submit'][@value='Continue with ChatBot']
Set Selenium Implicit Wait 3s
Click Element user.profileBean.issue
Select From List By Value user.profileBean.overrideIssue 2
Click Button Continue to connect
Set Selenium Implicit Wait 3s
Select Window main
Title Should Be XYZ
以下是截图:
答案 0 :(得分:0)
使用Windows时,最好使用唯一的ID,名称,标题或弹出窗口的URL。在下面的例子中,我有一个简单的索引页面,可以创建一个弹出窗口。
<强>的index.html 强>
<html>
<head>
<title>main-window</title>
</head>
<body>
<a href="http://localhost:8090/popup/popup.html" onclick="javascript:void window.open('http://localhost:8090/popup/popup.html','1496569988172','width=700,height=500,toolbar=0,menubar=0,location=0,status=0,scrollbars=0,resizable=0,left=0,top=0');return false;">Pop-up Window</a>
</body>
</html>
<强> popup.html 强>
<html>
<head>
<title>popup-window</title>
</head>
<body>
Pop!!
</body>
</html>
使用以下机器人脚本时,会在窗口之间切换。
*** Settings ***
Library Selenium2Library
*** Test Cases ***
Test popup
Create Webdriver Chrome
Go To http://localhost:8090/popup/
Click Link Pop-up Window
Select Window url=http://localhost:8090/popup/popup.html
Log Title
Select Window
Log Title
Capture Page Screenshot
[Teardown] Close All Browsers
在这种情况下,会将以下项目添加到日志文件中: