Selenium 2:“driver.findElement(By ....);

时间:2012-12-21 13:59:09

标签: java eclipse firefox selenium-webdriver

通过调用driver.findElement(By.className("item"));找不到元素时,selenium webDriver什么都不做 驱动程序甚至没有抛出我有时期待的ElementNotfoundException。它只是挂起。 这是一个例子:

ProfilesIni allProfiles = new ProfilesIni();
FirefoxProfile profile = allProfiles.getProfile("default");
driver = new FirefoxDriver(profile);
driver.manage().timeouts().implicitlyWait(3, TimeUnit.SECONDS);
driver.get(APP_ADDRESS);

WebElement sBoxPopup = driver.findElement(By
                .className("item"));
...

驱动程序挂在driver.findElement(...)上。即使我删除了hiddenlyWait它也会挂起。 我从4天开始搜索错误。我希望有人可以暗示一下。 我使用的是Firefox 17.0.1和selenium-java / -server 2.28。我也将硒版本降级到2.25,但没有任何反应。

3 个答案:

答案 0 :(得分:0)

您可以尝试将firefox版本降低到16并尝试。

答案 1 :(得分:0)

尝试使用driver.findelement(By.xpath(“// * [@ class ='date']”) 如果classname将包含空格“da te”,那么className将不起作用。

答案 2 :(得分:0)

我认为错误发生在xpath本身,因为在您的网页中可能会有更多次“class = item”。尝试通过在网页中找到一些唯一的字符串来更改xpath。