Buscar..


Sintaxis

  • retraso (int ms)
  • keyPress (código clave int)
  • keyRelease (código clave int)
  • mouseMove (int x, int y)
  • mousepress (botones int)
  • mouseRelease (botones int)
  • MouseWheel (int wheelAmt)

Parámetros

Parámetro Detalles
Sra Tiempo para dormir en milisegundos
clave Constante para presionar la tecla especificada, por ejemplo, para presionar A código A es VK_A . Consulte para obtener más detalles: https://docs.oracle.com/javase/7/docs/api/java/awt/event/KeyEvent.html
x, y Coordenadas de pantalla
botones La máscara de botón; una combinación de una o más máscaras de botón del mouse
wheelAmt Número de muescas para mover la rueda del mouse, valor negativo para moverse hacia arriba / hacia afuera del valor positivo del usuario para moverse hacia abajo / hacia el usuario

Observaciones

Esta sección contiene detalles sobre la implementación de Robot API con Selenium Webdriver. La clase Robot se usa para generar entradas nativas del sistema cuando el selenio no es capaz de hacerlo, por ejemplo, al presionar la tecla derecha del mouse, presionar la tecla F1, etc.

Evento de pulsación de tecla utilizando 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();
        }
    }
}

Con selenio

A veces necesitamos presionar cualquier tecla para probar el evento de presionar una tecla en la aplicación web. Para una instancia para probar la tecla ENTER en el formulario de inicio de sesión, podemos escribir algo como abajo con 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);
    }
}

Evento de ratón utilizando Robot API (JAVA)

Movimiento del ratón:

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);
     }
}

Presione el botón izquierdo / derecho del ratón:

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);
     }
}

Haga clic y desplace la rueda:

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
Licenciado bajo CC BY-SA 3.0
No afiliado a Stack Overflow