如何在 Selenium 中觸發 JavaScript 事件?
我們可以在 Selenium Webdriver 中觸發 JavaScript 事件。Selenium 可以使用 JavaScript 執行器執行 JavaScript 事件。我們應將 JavaScript 命令作為引數傳遞給 executeScript 方法。
我們應觸發單擊元素的 JavaScript 事件。首先,我們應使用以下任一定位器(例如 xpath、css、連結文字等)識別該元素。
然後,我們應將 引數 [0].click() 和要單擊的 webelement 傳遞給 executeScript 方法作為引數。
語法
WebElement m = driver.findElement(By.linkText("Write for us")); JavascriptExecutor js = (JavascriptExecutor) driver; js.executeScript("arguments[0].click();", m);
讓我們嘗試單擊突出顯示的連結 −
示例
import org.openqa.selenium.WebDriver; import org.openqa.selenium.chrome.ChromeDriver; import org.openqa.selenium.JavascriptExecutor; import org.openqa.selenium.WebElement; import org.openqa.selenium.By; public class FireEvntClickJs{ public static void main(String[] args) { System.setProperty("webdriver.chrome.driver", "C:\Users\ghs6kor\Desktop\Java\chromedriver.exe"); WebDriver driver = new ChromeDriver(); driver.get("https://tutorialspoint.tw/about/about_careers.htm"); // identify link WebElement m = driver.findElement(By.linkText("Write for us")); //Javascript Executor JavascriptExecutor j = (JavascriptExecutor) driver; j.executeScript("arguments[0].click();", m); System.out.println("Page title after click: " + driver.getTitle()); driver.quit(); } }
輸出
廣告