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

问题描述 投票:0回答:2

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

提前致谢。

selenium automation jmeter webdriver
2个回答
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()

参考文献:


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。

© www.soinside.com 2019 - 2024. All rights reserved.