Testing 如何关闭GEB中另一个窗口打开的确认对话框

Testing 如何关闭GEB中另一个窗口打开的确认对话框,testing,automated-tests,geb,Testing,Automated Tests,Geb,在我的一个功能性GEB测试中,我们遇到了这样一种情况,即使用 withNewWindow({ button.click() }, "close": true, "wait": true) { //Other things } 现在,当该窗口关闭时,将打开一个确认对话框,其中显示是否要离开此页面。如何关闭确认对话框 我知道有一种方法withConfirm用于关闭确认对话框,但我没有做任何事情来打开/关闭它,而是withNewWindow打开/关闭它 我尝试了各种选择,但不知道怎么做。我查看

在我的一个功能性GEB测试中,我们遇到了这样一种情况,即使用

withNewWindow({ button.click() }, "close": true, "wait": true) {
   //Other things
}
现在,当该窗口关闭时,将打开一个确认对话框,其中显示是否要离开此页面。如何关闭确认对话框

我知道有一种方法
withConfirm
用于关闭确认对话框,但我没有做任何事情来打开/关闭它,而是
withNewWindow
打开/关闭它


我尝试了各种选择,但不知道怎么做。我查看了,但找不到这方面的任何示例。

对于
withNewWindow()
关闭
选项,您需要传递
false
,然后在
withConfirm()调用中包装关闭新打开的窗口。在这种情况下:

withNewWindow({ button.click() }, close: false, wait: true) {
    //Other things
    withConfirm { driver.close() }
}

有没有关于关闭窗口的想法?正在获取“org.openqa.selenium.UnhandledAlertException:意外的模式对话框(文本:此页面要求您确认是否要离开-您输入的数据可能无法保存。)警报在关闭之前消失。:“实际上是通过在浏览器上迭代来关闭除当前窗口以外的所有窗口。getAvailableWindows()我不明白你要什么。你应该发布一个新问题吗?