selenium-webdriver
셀레늄의 로봇
수색…
통사론
- 지연 (int ms)
- keyPress (int keycode)
- keyRelease (int keycode)
- mouseMove (int x, int y)
- mousePress (int 단추)
- mouseRelease (int 단추)
- mouseWheel (int wheelAmt)
매개 변수
매개 변수 | 세부 |
---|---|
ms | 밀리 초 단위로 잠자기 시간 |
키 코드 | 예를 들어 A 키를 누르기 위해 지정된 키를 누르는 상수는 VK_A 입니다. 자세한 내용은 다음을 참조하십시오. https://docs.oracle.com/javase/7/docs/api/java/awt/event/KeyEvent.html |
x, y | 스크린 좌표 |
버튼 | 버튼 마스크. 하나 이상의 마우스 버튼 마스크의 조합 |
wheelAmt | 마우스 휠을 움직이게하는 노치의 수, 사용자쪽으로 또는 사용자쪽으로 이동하기 위해 사용자 양의 값에서 위로 / 멀리 이동하기위한 음의 값 |
비고
이 섹션에서는 Selenium Webdriver로 Robot API를 구현하는 방법에 대해 자세히 설명합니다. Robot 클래스는 셀레늄이 마우스의 오른쪽 키를 누르거나 F1 키를 누르는 등의 일을 할 수 없을 때 네이티브 시스템 입력을 생성하는 데 사용됩니다.
로봇 API (JAVA)를 사용하여 키 누르기 이벤트
import java.awt.AWTException;
import java.awt.Robot;
import java.awt.event.KeyEvent;
public class KeyBoardExample {
public static void main(String[] args) {
try {
Robot robot = new Robot();
robot.delay(3000);
robot.keyPress(KeyEvent.VK_Q); //VK_Q for Q
} catch (AWTException e) {
e.printStackTrace();
}
}
}
셀렌과 함께
때로는 웹 응용 프로그램에서 키 누르기 이벤트를 테스트하기 위해 아무 키나 누르기 만하면됩니다. 인스턴스가 로그인 폼에서 ENTER 키를 테스트하기 위해 우리는 Selenium WebDriver
import java.awt.AWTException;
import java.awt.Robot;
import java.awt.event.KeyEvent;
import org.openqa.selenium.By;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.firefox.FirefoxDriver;
import org.testng.annotations.Test;
public class LoginTest {
@Test
public void testEnterKey() throws InterruptedException
{
WebDriver driver=new FirefoxDriver();
Robot robot=null;
driver.get("test-url");
driver.manage().window().maximize();
driver.findElement(By.xpath("xpath-expression")).click();
driver.findElement(By.xpath("xpath-expression")).sendKeys("username");
driver.findElement(By.xpath("xpath-expression")).sendKeys("password");
try {
robot=new Robot();
} catch (AWTException e) {
e.printStackTrace();
}
//Keyboard Activity Using Robot Class
robot.keyPress(KeyEvent.VK_ENTER);
}
}
Robot API (JAVA)를 이용한 마우스 이벤트
마우스 이동 :
import java.awt.Robot;
public class MouseClass {
public static void main(String[] args) throws Exception {
Robot robot = new Robot();
// SET THE MOUSE X Y POSITION
robot.mouseMove(300, 550);
}
}
마우스 왼쪽 / 오른쪽 버튼 누름 :
import java.awt.Robot;
import java.awt.event.InputEvent;
public class MouseEvent {
public static void main(String[] args) throws Exception {
Robot robot = new Robot();
// LEFT CLICK
robot.mousePress(InputEvent.BUTTON1_MASK);
robot.mouseRelease(InputEvent.BUTTON1_MASK);
// RIGHT CLICK
robot.mousePress(InputEvent.BUTTON3_MASK);
robot.mouseRelease(InputEvent.BUTTON3_MASK);
}
}
휠을 클릭하여 스크롤하십시오 :
import java.awt.Robot;
import java.awt.event.InputEvent;
public class MouseClass {
public static void main(String[] args) throws Exception {
Robot robot = new Robot();
// MIDDLE WHEEL CLICK
robot.mousePress(InputEvent.BUTTON3_DOWN_MASK);
robot.mouseRelease(InputEvent.BUTTON3_DOWN_MASK);
// SCROLL THE MOUSE WHEEL
robot.mouseWheel(-100);
}
}
Modified text is an extract of the original Stack Overflow Documentation
아래 라이선스 CC BY-SA 3.0
와 제휴하지 않음 Stack Overflow