是否可以使用 Selenium 手動設定網路元素的屬性值?
是的,使用 JavaScript 執行器,可以在 Selenium webdriver 中手動設定網路元素的屬性值。Selenium 可以藉助 executeScript 方法執行 JavaScript 命令。
首先,我們需要識別出需要使用 JavaScript 命令手動設定屬性值的元素 document.getElementsByClassname。接下來,要設定屬性,我們必須使用 setAttribute 方法。
讓我們將按鈕立即檢查的背景色修改為黃色。預設情況下,網頁上的顏色是綠色。
這可以透過將 background-color 的樣式屬性設定為黃色來實現。
語法
JavascriptExecutor j = (JavascriptExecutor) driver; j.executeScript ("document.getElementsByClassName('mui-btn')[0].setAttribute('style', " + "'background-color: yellow')");
示例
import org.openqa.selenium.By; import org.openqa.selenium.WebDriver; import org.openqa.selenium.WebElement; import org.openqa.selenium.firefox.FirefoxDriver; import java.util.concurrent.TimeUnit; import org.openqa.selenium.JavascriptExecutor; public class BackGroundColr{ public static void main(String[] args) { System.setProperty("webdriver.gecko.driver", "C:\Users\ghs6kor\Desktop\Java\geckodriver.exe"); WebDriver driver = new FirefoxDriver(); driver.get("https://tutorialspoint.tw/index.htm"); // Javascript executor to modify background color JavascriptExecutor j = (JavascriptExecutor) driver; j.executeScript ("document.getElementsByClassName('mui-btn')[0].setAttribute('style', " + "'background-color: yellow')"); } }
輸出
廣告