在IDE中使用openWindow命令后,我遇到了焦点问题。此问题仅适用于同一测试套件中的第二个测试用例试图与新打开的窗口进行交互的情况。例如,我有一个测试套件包括单独的测试用例执行以下操作:在Selenium IDE中打开新窗口后保持焦点
- 登录到站点A
- 输入一些交易数据
- 提交该交易审批
- 打开一个新窗口并登录到站点B
- 批准站点B的交易,并关闭窗口
- 继续在现场处理事务A
如果我在与“openWindow”相同的测试用例中执行测试用例5“站点B”操作(即,合并测试用例4和5),那么所有命令都会执行而不会出错。如果我在不同的测试用例中执行相同的操作,那么新窗口失去焦点,所有的Selenium命令都会返回到原始窗口。
的这个有趣的部分是试图鉴定和在步骤5
在测试情况下5个会导致错误消息“窗口不存在执行“selectWindow名= siteB_URL”重新选择“新”的窗口。如果这看起来像一个硒臭虫...“。
然后,我想我会调用storeAllWindowNames并回显结果,至少可以看到Selenium在各个点都知道的窗口名称。如果我将它作为测试用例4中的最后两条命令,我会得到预期的结果 - 记录“echo,siteB_URL”。如果我在测试用例五的前两行做同样的事情,我会得到“回声”。这是让我感受到的部分 - 只是改变测试用例似乎失去了对新窗口的引用。
有没有人想过在Selenium IDE中解决这个问题的方法或解决方案?
我已经花了几个小时今早冲刷网络和各种论坛寻找建议无济于事。
由于提前,
格伦
12年4月7日 - 更新 - 这里的上述场景的一个简单的例子:
[info] Executing: |openWindow | http://www.google.com.au | google2 |
[info] Executing: |selectWindow | google2 | |
[info] Executing: |storeAllWindowNames | allWindows | |
[info] Executing: |echo | ${allWindows} | |
[info] echo: ,google2
[info] Changed test case
[info] Executing: |storeAllWindowNames | allWindows | |
[info] Executing: |echo | ${allWindows} | |
[info] echo:
[info] Executing: |selectWindow | name=google2 | |
[error] Window does not exist. If this looks like a Selenium bug, make sure to read http://seleniumhq.org/docs/04_selenese_commands.html#alerts-popups-and-multiple-windows for potential workarounds.
我有同样的问题。你是否解决了这个问题,还是仍然存在问题?请分享您的经验! – herry