Chrome上打开百度点击登录后,会弹出一个登录框,代码如下:
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("立即注册")); reg.Click(); 可是怎么定位,这个弹出框上的元素呢,一直提示Unable to locate element。 在webdriver里,要先定位到新的窗口,才能获取到界面里的元素 |
经过在51testing论坛提问,找到解决的方法如下:
经过在51testing论坛提问,找到解决的方法如下:
解决方法:Actions action =new Actions(driver);
thread.sleep(3000);
action.doubleclick(用xpath定位你要在弹出框中点击的元素).perform;