我正在使用带有webdriver / selenium的代码识别2.2.9来测试支付流程。
这是互动概述:
一切正常,除非支付提供商将窗口自动关闭作为流程的最后一步。我在selenium服务器中收到警告:
警告 - 例外:找不到窗口。浏览器窗口可能已关闭。
并且代码输出中出现错误:
[实\的webdriver \异常\ NoSuchWindowException] 找不到窗口。浏览器窗口可能已关闭。
付款提供商窗口自动打开后,我就这样切换到它:
$I->switchToNextTab();
问题是由于点击付款提供商网站上的“确认”按钮导致窗口自动关闭,如下所示:
$I->click('.form-submitter'); // now the window is gone
我能做些什么来防止这个错误吗? 有没有办法让窗户关闭?
感谢您的帮助!
答案 0 :(得分:0)
关闭打开的浏览器窗口后,您应该命令selenium切换回主窗口。有几种方法可以实现这一点,最简单的方法是切换到父窗口(http://codeception.com/docs/modules/WebDriver#switchToWindow):
# switch to parent window
$I->switchToWindow();