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