如何在Jmeter webdriver Sampler中关闭新打开的窗口。

时间:2018-03-01 05:24:36

标签: selenium automation jmeter webdriver

我已经在JMeter webdriver采样器中自动执行了一些操作,在我正在移动到新窗口的场景中,但是我无法关闭新打开的窗口。 WDS.browser.close()在那里不起作用。如何仅关闭新窗口并与父级一起使用?

提前致谢。

2 个答案:

答案 0 :(得分:1)

您可以执行以下操作:

var handles = WDS.browser.getWindowHandles() 
var iterator = handles.iterator()
var currentHandle = WDS.browser.getWindowHandle()
while(iterator.hasNext()) {
    var handle = iterator.next() 
    if (handle != currentHandle) {
        WDS.browser.switchTo().window(handle)
        WDS.browser.close()
    }
}
WDS.browser.switchTo().defaultContent()

参考文献:

答案 1 :(得分:0)

我所做的(虽然在python中)是开关手柄,关闭当前窗口,然后切换回来。也许它可以作为你问题的灵感来源:

def close_additional_tabs(self):
        self.cfg.logger.info("[TEARDOWN] Close open tabs and switch to original frame.")
        while len(self.webdriver.window_handles) > 1:
            self.webdriver.switch_to_window(self.webdriver.window_handles[-1])
            self.webdriver.close()
            time.sleep(1)
            self.webdriver.switch_to_window(self.webdriver.window_handles[-1])

这适用于标签,但它也适用于Windows。

相关问题