【发布时间】:2017-02-12 00:27:13
【问题描述】:
我有这个代码:
IWebDriver driver = new FirefoxDriver();
driver.Manage().Window.Maximize();
driver.Manage().Timeouts().ImplicitlyWait(TimeSpan.FromSeconds(30));
//Go to the powerbi site
driver.Navigate().GoToUrl("https://powerbi.microsoft.com/en-us/");
//Go to the page with login form
driver.FindElement(By.XPath("html/body/div[2]/header/nav/div/ul[3]/li[1]/a")).Click();
//Fill in email field
driver.FindElement(By.XPath("//*[@id='cred_userid_inputtext']")).SendKeys("example@gmail.com");
当我在我的计算机上启动此代码时,一切正常,没有错误。但是当我在老板的计算机上启动这段代码时,有时它可以工作,有时它不能。
发生错误时,它始终位于代码的最后一行。我不记得到底是哪个错误:InvalidElementStateException(当目标元素未启用时)或 ElementNotVisibleException(当目标元素不可见时)。
我想整个事情都在 Click() 方法上。 documentation 说:
单击此元素。如果单击导致加载新页面,则 Click() 方法将尝试阻止,直到页面加载完毕。
我不太明白它是如何试图阻止的。
【问题讨论】:
标签: c# selenium selenium-webdriver