在 Selenium 中获取 Javascript 代码的返回值。

seleniumautomation testingtesting toolsjavascript

我们可以使用 Selenium webdriver 获取 Javascript 代码的返回值。Selenium 可以借助 executeScript 方法运行 Javascript 命令。要执行的 Javascript 命令作为参数传递给该方法。

我们将借助关键字 return 从 Javascript 代码返回值。我们还必须添加语句 import org.openqa.selenium.JavascriptExecutor 才能使用 Javascript。

语法

JavascriptExecutor j = (JavascriptExecutor) driver;
j.executeScript("return document.getElementsByName('txtSearchText')[0].value")

让我们获取编辑框中输入的值。输出应为 Selenium

示例

代码实现

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);
      // 识别元素并输入文本
      WebElement t=driver.findElement(By.id("txtSearchText"));
      t.sendKeys("Selenium");
      // Javascript 执行器返回值
      JavascriptExecutor j = (JavascriptExecutor) driver;
      String s = (String) j.executeScript("return document.getElementsByName('txtSearchText')[0].value");
      System.out.print("Value is: " +s);
      driver.quit();
   }
}

输出


相关文章