selenium-webdriver
Robot w selenie
Szukaj…
Składnia
- opóźnienie (int ms)
- keyPress (int keycode)
- keyRelease (int keycode)
- mouseMove (int x, int y)
- mousePress (int przyciski)
- mouseRelease (int przyciski)
- mouseWheel (int wheelAmt)
Parametry
Parametr | Detale |
---|---|
ms | Czas na sen w milisekundach |
Kod Klucza | Stała naciśnięcie określonego klucza, na przykład wcisnąć A kod jest VK_A . Więcej informacji można znaleźć na stronie : https://docs.oracle.com/javase/7/docs/api/java/awt/event/KeyEvent.html |
x, y | Współrzędne ekranu |
guziki | Maska przycisku; kombinacja jednej lub więcej masek przycisków myszy |
koło | Liczba wycięć do poruszania kółkiem myszy, wartość ujemna do przesuwania w górę / od użytkownika wartość dodatnia do przesuwania w dół / w kierunku użytkownika |
Uwagi
Ta sekcja zawiera szczegółowe informacje na temat implementacji Robot API z Selenium Webdriver. Klasa Robot służy do generowania danych wejściowych systemu, gdy selen nie jest w stanie tego zrobić, na przykład naciskając prawy klawisz myszy, klawisz F1 itp.
Zdarzenie naciśnięcia klawisza przy użyciu Robot 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();
}
}
}
Z Selenem
Czasami musimy nacisnąć dowolny klawisz, aby przetestować zdarzenie naciśnięcia klawisza w aplikacji internetowej. Na przykład, aby przetestować klawisz ENTER w formularzu logowania, możemy napisać coś takiego jak poniżej za pomocą 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);
}
}
Zdarzenie myszy przy użyciu Robot API (JAVA)
Ruch myszy:
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);
}
}
Naciśnij lewy / prawy przycisk myszy:
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);
}
}
Kliknij i przewiń koło:
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
Licencjonowany na podstawie CC BY-SA 3.0
Nie związany z Stack Overflow