在web自動(dòng)化測(cè)試中點(diǎn)擊一個(gè)鏈接然后彈出新窗口是比較司空見慣的事情。近在測(cè)試練習(xí)使用自動(dòng)化測(cè)試,
Chrome上打開百度點(diǎn)擊登錄后,會(huì)彈出一個(gè)登錄框,
代碼如下:
IWebDriver driver = new ChromeDriver();
driver.Navigate().GoToUrl("http://www.baidu.com");
IWebElement login = driver.FindElement(By.LinkText("登錄"));
login.Click();
IWebElement reg = driver.FindElement(By.LinkText("立即注冊(cè)"));
reg.Click();
可是怎么定位,這個(gè)彈出框上的元素呢,一直提示Unable to locate element。
在webdriver里,要先定位到新的窗口,才能獲取到界面里的元素
解決方法:Actions action =new Actions(driver);
thread.sleep(3000);
action.doubleclick(用xpath定位你要在彈出框中點(diǎn)擊的元素).perform;