robot class selenium webdriver with java
Este tutorial explica los usos, ejemplos y funcionalidades de la clase de robot en Java y su integración con Selenium Framework:
Robot Java es un Robot clase en el Java Paquete AWT. Generalmente se usa para simular operaciones de teclado y mouse en tiempo real que hacemos manualmente.
El objetivo principal de Robot Class en Java es la automatización. La belleza de esto es que se puede integrar fácilmente con el marco de automatización actual para aumentar su alcance.
Lo que vas a aprender:
- Clase de robot en Java
- Conclusión
Clase de robot en Java
En este tutorial, aprenderemos sobre la integración de Selenium con Robot Class en Java, pero en general, Java Robot Class se puede usar en cualquier marco de automatización construido en Java.
Simulación de funcionalidades de la clase de robot
Hay muchas funcionalidades de Robot Class en Java, a continuación se enumeran algunos métodos asociados con ellos:
# 1) Funcionalidades del teclado
Las funcionalidades de teclado de la clase Robot generalmente tratan sobre la simulación de diferentes teclas disponibles en los teclados y sus operaciones.
Pulsar tecla de anulación pública (código de tecla int)
Esta función presiona la tecla de parámetro de entrada. Para completar la operación se debe utilizar el método de liberación de claves.
Siga el siguiente fragmento de código:
|_+_|Aquí, en el fragmento de código anterior, solo estamos presionando CTRL + V. El método KeyEvent está asociado a otras teclas disponibles en nuestro teclado. Se pueden probar todos.
Public void keyRelease (código clave int)
Este método libera la tecla de parámetro de entrada. Esto es posterior a la operación del método de pulsación de teclas.
Siga el siguiente fragmento de código:
|_+_|Aquí, en el fragmento de código anterior, solo estamos lanzando CTRL + V. De manera similar, como se indicó anteriormente, el método KeyEvent también está asociado con otras teclas disponibles para nuestro teclado. Se pueden probar todos.
# 2) Funciones del mouse
Las funcionalidades del mouse se ocupan de simular diferentes operaciones del mouse.
MouseMove público vacío (int x, int y)
Aquí, los dos parámetros determinan las coordenadas de la pantalla. Una vez que le damos las coordenadas, el mouse se mueve al punto de las coordenadas dadas de la pantalla.
Siga el fragmento de código proporcionado:
robot.mouseMove (0, 900);
Aquí, la posición del parámetro x es 0 y el parámetro y es 900. Entonces, el mouse se moverá a ese punto. Se puede hacer un método de error y prueba para moverse a las distintas posiciones de la pantalla.
MousePress vacío público (botones int)
Uno puede imaginar esta funcionalidad con funcionalidades keyPress para obtener una concepción clara. Este método simula las funciones mousePress.
Siga el siguiente fragmento de código:
|_+_|MouseRelease vacío público (botones int)
Uno puede imaginar esta funcionalidad con funcionalidades keyPress para obtener una concepción clara. Este método simula las funciones mousePress.
Siga el siguiente fragmento de código:
|_+_|Nota :Hay varios otros métodos disponibles para la exploración. Pero los métodos anteriores son los que se utilizan con más frecuencia. Sin embargo, para explorar otros métodos, se puede buscar la clase Robot Java en los documentos de Oracle.
Uso de la clase de robot en Java
¿Cuándo y dónde podemos usar Robot Class en Java para mejorar la funcionalidad de manera efectiva en un marco de automatización?
Como todos sabemos, Selenium se puede utilizar para automatizar aplicaciones web. Estas aplicaciones web en Selenium utilizan el objeto web subyacente (localizadores) de la aplicación web para determinar la posición en la página web y operar en consecuencia. Ahora, en ciertos casos, vemos que necesitamos manejar la ventana emergente de autenticación de Windows o cualquier otra ventana emergente mientras automatizamos en el sistema operativo Windows.
Selenium no puede automatizar las acciones de Windows, pero podemos usar Robot Class en Java para realizar la tarea.
Ejemplos de clases de robots Java
Ejemplo 1: Uso de Robot Class para automatizar algunas funcionalidades de Windows
A veces, cualquier pequeña parte / módulo de toda la aplicación web puede diseñarse en flash. Podemos usar la clase Robot para manejar esa parte. Dado que los objetos web permanecen ocultos para la pieza diseñada en flash.
expresiones regulares en c ++
Otra característica importante que se puede automatizar con Robot Class en Java son los editores de texto enriquecido, que a veces permanecen incrustados en las aplicaciones web. Hay varias funciones operativas en los editores RTF que son bastante fáciles de automatizar usando esta clase.
Ejemplo 2: Uso de Robot Class para automatizar campos RTF
Nota :Hay otras herramientas de código abierto disponibles en el mercado como Auto IT (especialmente diseñado para automatizar la GUI de Windows), Sikuli (herramienta de procesamiento de imágenes), etc. para realizar tareas similares.
Esto es cierto, pero Robot Class en Java viene con JDK. Por lo tanto, no necesitamos ninguna otra herramienta para instalar, esta es una ventaja directa si se utiliza un marco de automatización basado en Java.
Automatización de campos RTF
Imagen de muestra:
Fragmento de ejemplo:
|_+_|Aquí, dos funcionalidades de los editores RTF se han automatizado usando íconos en negrita y cursiva.
Automatización de algunas funcionalidades de Windows
|_+_|Este fragmento de código generalmente se ocupa de comenzar desde el icono de inicio hasta ver la configuración del sistema. Usando un concepto similar, también se puede manejar la generación de ventanas emergentes mientras se inicia o entre operaciones en una página web.
Consejos para incorporar Robot Java en Java + Selenium Framework existente
Ahora, vamos a ver cómo modificar la pieza de códigos demostrada anteriormente para que podamos acomodar la misma en un marco existente de Selenium + Java.
Tenga en cuenta que este es un concepto y hay muchas otras formas de lograrlo. Podemos ampliar / modificar aún más este concepto para satisfacer las necesidades comerciales que pueden variar de un proyecto a otro.
Primero, cree una clase que contendrá todos los métodos comunes o de la clase Robot disponibles para que, cuando sea necesario, podamos utilizar esos métodos para cualquier otra clase en la que estemos escribiendo casos de prueba.
Los siguientes fragmentos de código demuestran esto:
|_+_|Aquí hemos tomado algunos métodos, uno puede agregar de manera similar otros métodos de acuerdo con las necesidades de su proyecto.
Cada método se adjunta a un caso de interruptor, de modo que la palabra clave de caso se puede utilizar cuando y donde sea necesario.
Ahora veamos cómo podemos transformar el código que hemos escrito para automatizar el editor RTF:
Consulte el siguiente fragmento de código para comprender que:
|_+_|Estamos creando el objeto de la clase CommonRobotMethods dentro de la clase seleniumFramework y accediendo a los métodos definidos en la clase CommonRobotMethods a través de. Cambie las palabras clave definidas en la clase CommonRobotMethods.
Aquí, hemos creado una interfaz para anotar todas las entradas que se pueden externalizar. Pero uno puede dividir y escribir en Excel / propiedades o interfaz de acuerdo con su nivel de comodidad o necesidades comerciales.
|_+_|Conclusión
Con suerte, ahora está claro cómo utilizar Robot Class dentro de un marco Selenium + Java. Deseamos que todos encuentren este artículo interesante y útil para aprender el concepto.
Lectura recomendada
- Tutorial de Cucumber Selenium: Integración de Cucumber Java Selenium WebDriver
- Conceptos básicos de Java: sintaxis de Java, clase de Java y conceptos básicos de Java
- Explore los conceptos básicos de Java en Selenium con ejemplos
- Integración de selenio con JMeter
- Tutorial de la clase Java Scanner con ejemplos
- Tutorial de clase de matriz de Java - clase java.util.Arrays con ejemplos
- ¿Qué es Java Vector | Tutorial de clase de vector de Java con ejemplos
- Tutorial de interfaz Java y clase abstracta con ejemplos