Java、Chrome上でSelenium WebDriver 2.53.1を使用します。Selenium xpath text() - シンプルな選択が動作していないようです。
要素を見つけて、それをdropdownMenuListという名前のWebElement変数に保存します。ここに書式設定されたその外部HTMLがあります。
<ul tabindex="-1" class="dropdownMenu apmurldropdownmenu thing menu" role="menu" aria-label="Menu region">
<li class="menuitem apmurldropdownmenu" tabindex="-1" role="menuitem">
<div class="thing text">CardNameWebpage</div>
</li>
<li class="menuitem apmurldropdownmenu" tabindex="-1" role="menuitem">
<div class="thing text">CardNameWebpage</div>
</li>
<li class="menuitem apmurldropdownmenu" tabindex="-1" role="menuitem">
<div class="thing text">CardNameWebpage</div>
</li>
<!-- react-text: 9 -->
<!-- /react-text -->
</ul>
は、それから私は、XPathによってそれで検索:
dropdownMenuList.findElement(By.xpath("*[text()='CardNameWebpage']"));
そして、私ははNoSuchElementExceptionを取得します。しかし、HTMLにはこのテキストの3つの要素がすべて含まれています。私は間違って何をしていますか?
私は、//ドキュメントの先頭から検索します。この要素からのみ検索する必要があります。 –
'.//* [text()= 'CardNameWebpage']'(相対位置パス) –
この場合、 '*'をより具体的にするために '*'を置き換えますが、私。 :) – JeffC