Selenium IDE - 按标题选择窗口

时间:2016-02-23 08:45:45

标签: selenium

我正在使用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+

我无法弄清楚为什么这段代码无效。

1 个答案:

答案 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;

如果有任何问题,请告诉我。