WebDriver click() 与 JavaScript click()。

javascriptweb developmentfront end technologyobject oriented programming

我们可以使用 webdriver click 和 Javascript click 来点击链接。对于 Selenium webdriver 点击链接,我们可以使用链接文本和部分链接文本定位器。我们可以使用 driver.findElement(By.linkText()) 和 driver.findElement(By.partialLinkText()) 方法进行点击。

html 代码中的链接包含在锚标记中。锚标记内的链接文本作为参数传递给 driver.findElement(By.linkText(<link text>)) 方法。锚标记内的部分匹配链接文本作为参数传递给 driver.findElement(By.partialLinkText(<partial link text>)) 方法。最后,要单击链接,请使用 click 方法。

让我们看看带有锚标记的链接的 html 代码。

示例

代码实现。

import org.openqa.selenium.WebDriver;
import org.openqa.selenium.chrome.ChromeDriver;
import org.openqa.selenium.WebElement;
import org.openqa.selenium.By;
public class DriverClick{
   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://www.tutorialspoint.com/about/about_careers.htm");
      // 使用链接文本定位器识别链接
      driver.findElement(By.linkText("Write for us")).click();
      System.out.println("点击后的页面标题:" + driver.getTitle());
   }
}

我们还可以使用 Selenium 中的 Javascript Executor 执行单击链接等 Web 操作。我们将使用 executeScript 方法并将 argument index.click() 和要单击的 webelement 作为参数传递给该方法。

示例

使用 Javascript 执行器的代码实现。

import org.openqa.selenium.WebDriver;
import org.openqa.selenium.chrome.ChromeDriver;
import org.openqa.selenium.JavascriptExecutor;
import org.openqa.selenium.By;
public class DriverClickJs{
   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://www.tutorialspoint.com/about/about_careers.htm");
      // 识别链接
      WebElement l = driver.findElement(By.linkText("Write for us"));
      //使用 Javascript Executor 点击链接
      JavascriptExecutor j = (JavascriptExecutor) driver;
      j.executeScript("arguments[0].click();", l);
      System.out.println("点击后的页面标题:" + driver.getTitle());
   }
}

输出


相关文章