2012-01-12 15 views
5

Firefoxで次のコードを実行すると正しく実行されますが、IE8ではxpathを評価できない、またはWebElementにならないと表示されます。Selenium 2.0 WebDriver xpathによるIE8のfindelementを評価できません

webDriver.findElement(By.xpath("//input[@id='submitForm']")).sendKeys("\n"); 

OR

webDriver.findElement(By.xpath("//input[@id='submitForm']")).click(); 

I "は、[4] /目/入力// DIV [ID @ = 'パラメータ'] /テーブル/ TBODY/TR" 代替XPathを試みたが、それは同じ与えます結果。

IEドライバの問題ですが、回避策がある場合は教えてください。

+0

を誰でも上記のエラーの背後に正確にどのような理由、教えてもらえますか? IEでしか見ることができませんでした。 – Shiv

答えて

4

以下のようにお試しいただけますか? IEはwebdriverをこのためjavascript-xpathと呼ばれるサードパーティのライブラリを使用して、ネイティブのXPathをサポートしていないため、これはそれのバグかもしれ

webDriver.findElement(By.xpath("//input[string(@id)='submitForm']")).click() 

1

IE 8セレンウェブドライバでこのトップ3行の強制が必要

DesiredCapabilities ieCapabilities = DesiredCapabilities.internetExplorer(); 
    ieCapabilities.setCapability(InternetExplorerDriver.INTRODUCE_FLAKINESS_BY_IGNORING_SECURITY_DOMAINS, true); 

    WebDriver webDriver= new InternetExplorerDriver(ieCapabilities); 

IdでのXpathを変更してください:

webDriver.findElement(By.id("submitForm")).click(); 
関連する問題