无法使用selenium webdriver java在IE8中找到元素

时间:2015-03-04 15:14:48

标签: java selenium selenium-webdriver internet-explorer-8

我正在尝试使用INTRODUCE_FLAKINESS_BY_IGNORING_SECURITY_DOMAINS功能在IE8中运行我的测试。但不知何故,webdriver告诉我找不到元素。以下是我重现错误的示例代码段

import org.openqa.selenium.By;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.WebElement;
import org.openqa.selenium.ie.InternetExplorerDriver;
import org.openqa.selenium.remote.DesiredCapabilities;

class IETest
{
    public static void main(String args[])
    {
        System.setProperty("webdriver.ie.driver", "src/main/resources/IEDriverServer.exe");
        DesiredCapabilities cap = DesiredCapabilities.internetExplorer();
        cap.setCapability(InternetExplorerDriver.INTRODUCE_FLAKINESS_BY_IGNORING_SECURITY_DOMAINS, true);
        WebDriver driver = new InternetExplorerDriver(cap);
        // WebDriver driver=new FirefoxDriver();
        driver.manage().window().maximize();
        driver.get("http://www.stackoverflow.com/");
        By by = By.name("q");
        System.out.println("Started.");

        WebElement ele = driver.findElement(by);
        ele.sendKeys("test");
        try
        {
            System.out.println("Starting to wait for some time.");
            Thread.sleep(3000);
        } catch (InterruptedException e)
        {
            e.printStackTrace();
        }
        driver.close();
    }
}

IE8 - 尝试了两个版本(32位和64位) Selenium-java版本:2.44.0,2.40,2.39.0 注意:保持您的安全域已启用,以便selenium应该能够忽略安全域。

编辑:我目前的互联网设置是: 互联网:启用 本地Intranet:已启用 可信站点:已禁用 受限制的站点:已启用

TIA !!

1 个答案:

答案 0 :(得分:0)

尝试使用以下两项功能:

capabilities.SetCapability("EnableNativeEvents", false);
capabilities.SetCapability("RequireWindowFocus", true);

我是C#。