((RemoteWebElement) webElement).getId()
次のような文字列を返す を使用して、Selenium で要素の ID を取得できます。
{e9b6a1cc-bb6f-4740-b9cb-b83c1569d96d}
そのIDの由来が気になります。を使っているのですFirefoxDriver()
が、この Firefox が関係しているのでしょうか?
このIDを知るだけでJqueryで要素を選択する方法はありますか?
((RemoteWebElement) webElement).getId()
次のような文字列を返す を使用して、Selenium で要素の ID を取得できます。
{e9b6a1cc-bb6f-4740-b9cb-b83c1569d96d}
そのIDの由来が気になります。を使っているのですFirefoxDriver()
が、この Firefox が関係しているのでしょうか?
このIDを知るだけでJqueryで要素を選択する方法はありますか?
内部 ID にアクセスする必要はまったくありません。WebElement インスタンスを JavascriptExecutor.executeScript に渡すだけです。
import org.openqa.selenium.JavascriptExecutor;
((JavascriptExecutor) driver).executeScript("$(arguments[0]).whatever()", myElement)
この多数の文字と数字の ID は、WebElement オブジェクトに対応するブラウザー DOM 内のノードの内部識別子です。
属性「id」の値を取得するには、getAttribute メソッドを使用する必要があります。
String id = myElement.getAttribute("id");
「id」属性で要素を選択するには、次のように findElement メソッドを使用する必要があります。
WebElement myElement = driver.findElement(By.id("my_element_id"));
jQuery セレクターを使用する場合は、次のように findElement メソッドを使用する必要があります (「div」要素であることがわかっているとします)。
WebElement myElement = driver.findElement(By.cssSelector("div#my_element_id"));