웹드라이버 클릭과 자바스크립트 클릭으로 링크를 클릭할 수 있습니다. Selenium webdriver 링크 클릭의 경우 링크 텍스트와 부분 링크 텍스트 로케이터를 사용할 수 있습니다. driver.findElement(By.linkText()) 및 driver.findElement(By.partialLinkText()) 메서드를 사용하여 클릭할 수 있습니다.
html 코드의 링크는 앵커 태그로 묶입니다. 앵커 태그 안에 포함된 링크 텍스트는 driver.findElement(By.linkText())에 인수로 전달됩니다. 방법. 앵커 태그 안에 포함된 부분적으로 일치하는 링크 텍스트는 driver.findElement(By.partialLinkText(
앵커 태그가 있는 링크의 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"); // identify link with link text locator driver.findElement(By.linkText("Write for us")).click(); System.out.println("Page title after click: " + driver.getTitle()); } }
Selenium에서 Javascript Executor로 링크를 클릭하는 것과 같은 웹 작업을 수행할 수도 있습니다. executeScript를 사용합니다. 메소드 및 전달 인수 index.click() 및 웹 요소 메소드에 대한 인수로 클릭됩니다.
예시
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"); // identify link WebElement l = driver.findElement(By.linkText("Write for us")); //click link with Javascript Executor JavascriptExecutor j = (JavascriptExecutor) driver; j.executeScript("arguments[0].click();", l); System.out.println("Page title after click: " + driver.getTitle()); } }
출력