我正在使用Selenium IDE。
我使用我的网页中的按钮打开了一个W2窗口,其命令为:
class Set implements ArrayAccess {
protected $data = [];
public function offsetSet($offset, $value) {
if (is_null($offset)) {
$this->data[] = $value;
} else {
$this->data[$offset] = $value;
}
$this->data = array_unique($this->data);
}
public function offsetExists($offset) {
return isset($this->data[$offset]);
}
public function offsetUnset($offset) {
unset($this->data[$offset]);
}
public function offsetGet($offset) {
return isset($this->data[$offset]) ? $this->data[$offset] : null;
}
}
$a = new Set()
$a[] = 'foo';
$a[] = 'foo'; // deduplicated
window.open(url, "_blank");
类似于url
我的窗口已打开但返回主窗口。我必须关闭W2,所以我尝试了:
http://example.com...
我收到错误waitForPopUp(title=Sigma+ : Authentification Sigma+)
selectWindow(title=Sigma+ : Authentification Sigma+)
close()
,但是我的窗口W2有这个标题:
[error] Could not find window with title Sigma+ : Authentification Sigma+
我无法弄清楚为什么这段代码无效。
答案 0 :(得分:0)
我不知道您使用的是哪种语言, 但是使用c#,您可以使用以下代码处理此场景。
请尝试以下代码。 C# 强>
var allWindows = driver.WindowHandles;
//for sencode window
driver.SwitchTo().Window(allWindows.Last());
//close sencode window using following
driver.Close(); //it will close second window.
//switch to main window.
driver.SwitchTo().DefaultContent();
//or
driver.SwitchTo().Window(allWindows.First());
//to close firsrt window
driver.Close();//it will close first window;
如果有任何问题,请告诉我。