Chúng ta có thể lấy giá trị trả về của mã Javascript bằng Selenium webdriver. Selenium có thể chạy các lệnh Javascript với sự trợ giúp của executeScript phương pháp. Lệnh Javascript được thực thi được chuyển như một đối số cho phương thức.
Chúng tôi sẽ trả lại giá trị từ mã Javascript với sự trợ giúp của từ khóa trả về. Ngoài ra, chúng tôi phải thêm câu lệnh import org.openqa.selenium.JavascriptExecutor để làm việc với Javascript.
Cú pháp
Trình điều khiểnJavascriptExecutor j = (JavascriptExecutor) driver; j.executeScript("return document.getElementsByName('txtSearchText')[0].value")
Hãy để chúng tôi lấy giá trị được nhập vào hộp chỉnh sửa. Đầu ra phải là Selenium .
Ví dụ
Triển khai mã
import org.openqa.selenium.By; import org.openqa.selenium.WebDriver; import org.openqa.selenium.WebElement; import org.openqa.selenium.chrome.ChromeDriver; import java.util.concurrent.TimeUnit; import org.openqa.selenium.JavascriptExecutor; public class JavascriptValue{ public static void main(String[] args) { System.setProperty("webdriver.chrome.driver", "C:\\Users\\ghs6kor\\Desktop\\Java\\chromedriver.exe"); WebDriver driver = new ChromeDriver(); String url = "https://www.tutorialspoint.com/tutor_connect/index.php"; driver.get(url); driver.manage().timeouts().implicitlyWait(12, TimeUnit.SECONDS); // identify element and enter text WebElement t=driver.findElement(By.id("txtSearchText")); t.sendKeys("Selenium"); // Javascript executor to return value JavascriptExecutor j = (JavascriptExecutor) driver; String s = (String) j.executeScript("return document.getElementsByName('txtSearchText')[0].value"); System.out.print("Value is: " +s); driver.quit(); } }
Đầu ra