web-dev-qa-db-ja.com

JavaScriptを使用して、Javaを使用するSelenium Webdriverを使用して、選択したWeb要素の属性を設定する方法

JavaScriptを使用して、Webページ上の選択した要素の属性を設定したいのですが。

私はJavaScriptを使用して属性を設定する2つの方法を見つけました

1

   WebDriver driver; // Assigned elsewhere
    JavascriptExecutor js = (JavascriptExecutor) driver;
    js.executeScript("document.getElementByID('//id of element').setAttribute('attr', '10')");

2

WebElement element = driver.findElement(By.id("foo"));
    String contents = (String)((JavascriptExecutor)driver).executeScript("return arguments[0].innerHTML;", element);

しかし、私はSelenium webdriverを使用して見つけた特定のwebelementにJavaScriptを適用したいと思います

例として、Selenium Webdriverを使用して1つのリンクを選択しました

driver.findElement(By.linkText("Click ME"))

次に、JavaScriptを使用してこのWeb要素の属性を設定します

両方を組み合わせる方法がわかりません

解決策を見つけるのを手伝ってください

13
Jasmine.Olivra

以下に沿って:

JavascriptExecutor js = (JavascriptExecutor) driver;
WebElement element = driver.findElement(By.linkText("Click ME"));
js.executeScript("arguments[0].setAttribute('attr', '10')",element);
31
nilesh