私はSelenium-WebDriver
を初めて利用しています。要素を見つけてそれをクリックしようとしています。Selenium Webドライバ - 要素が見つかりません
しかし、常にエラーの下になって:関連するHTMLコードがある
"xpath = html/body/header/div/ul/li[2]/a/span[1]"
:
<ul class="nav navbar-nav navbar-right top-nav ">
<li class="identity has-icon">
<a href=".......">
</li>
<li class="settings has-icon">
<a href=".......">
<span class="icon icon-cogs" aria-hidden="true" role="presentation"/>
**<span class="nav-title">Settings</span>**
</a>
</li>
私は内の要素を見つけることを試みてきたのxpath以下に提供
unable to locate an element
Firepath
以下のようにします。
1. driver.findElement(By.xpath("//div[@id='right-nav']//a[contains(text(),'Settings')]")).click();
2. driver.findElement(By.xpath("//div[@id='nav-title']//a[contains(text(),'Settings')]")).click();
3. driver.findElement(By.xpath("//div[contains(@class, 'nav-title')]")).click();
誰かが解決策を見つけるのに役立つでしょうか?
ありがとうございました。これは機能します。要素を見つけることができる相対パスに "// li/a ...."を追加するが、 "// span ..."は "要素は現在表示されていないエラー"を示しているのはなぜですか? "。"構文はコード内の意味ですか? – user6507067
それだけでは変化だけではなく、要素テキストの値に 'と'を使った追加の識別要因にも依存します。あなたが[回答](http://stackoverflow.com/help/someone-answers)としてそれを受け入れると感謝します – Rao