RobotFramework-Zoomba es una colección de bibliotecas que abarcan la GUI, la API REST y la automatización de la API SOAP utilizando Robot Framework. Estas bibliotecas son extensiones de bibliotecas existentes Seleniumlibrary, solicitudes y Sudslibrary.
Zoomba agrega una cantidad significativa de soporte de validación de datos para la API REST y SOAP y extiende la funcionalidad para la automatización típica de la GUI web.
Como un equipo que comenzó el viaje de automatización con el marco de robots: descubrimos que hubo algún tiempo en aumento de nuestras bibliotecas y RobotFramework -Zoomba tiene como objetivo facilitar ese proceso para nuevos proyectos.
Consulte la documentación de palabras clave para la Biblioteca API, SOAP o GUI para obtener información más específica sobre la funcionalidad.
Las pruebas de ejemplo se pueden encontrar en el directorio de muestras.
Cuando trabaja con páginas web de diferentes tiempos de carga, probablemente se encuentre ejecutando muchas llamadas como así:
Wait Until Page Contains Element locator
Click Element locator
Para facilitar el uso, hemos combinado muchos de estos en palabras clave simples de una línea:
Wait For And Click Element locator
Wait For And Click Text text
Wait For And Select From List list_locator target_locator
Otra palabra clave que es particularmente útil es para cuando está esperando que JavaScript se complete en una página antes de continuar:
Wait For And Click Element locator that leads to a new page with javascript
Wait Until Javascript Is Complete
Wait For And Click Element locator
Esta biblioteca envuelve la biblioteca de solicitudes, por lo que hemos creado un conjunto de palabras clave para permitir fácilmente que los usuarios realicen solicitudes en una sola palabra clave:
Call Get Request ${ headers_dictionary } endpoint query_string
Call Post Request ${ headers_dictionary } endpoint query_string ${ data_payload }
Después de recibir sus datos, hicimos que sea increíblemente fácil validarlos. Validate Respuesta contiene la respuesta esperada toma su solicitud recibida y la compara con sus datos esperados. Si hay algún error encontrado, informará la línea por línea lo que son.
Validate Response Contains Expected Response ${ json_actual_response } ${ json_expected_response }
Si hay datos no coincidentes, se verá algo así:
Key(s) Did Not Match:
------------------
Key: pear
Expected: fish
Actual: bird
------------------
Full List Breakdown:
Expected: [{'apple': 'cat', 'banana': 'dog', 'pear': 'fish'}, {'apple': 'cat', 'banana': 'mice', 'pear': 'bird'}, {'apple': 'dog', 'banana': 'mice', 'pear': 'cat'}]
Actual: [{'apple': 'cat', 'banana': 'dog', 'pear': 'bird'}]
Please see differing value(s)
Si quisiera ignorar una clave como 'update_date', simplemente establecería la variable 'ignored_keys' en esa clave o una lista de claves:
Validate Response Contains Expected Response ${ json_actual_response } ${ json_expected_response } ignored_keys=update_date
Validate Response Contains Expected Response ${ json_actual_response } ${ json_expected_response } ignored_keys= ${ list_of_keys }
La biblioteca Zoomba se instala fácilmente utilizando el archivo setup.py
en el directorio de inicio. Simplemente ejecute el siguiente comando para instalar Zoomba y sus dependencias:
pip install robotframework - zoomba
Si decide extraer el repositorio localmente para hacer contribuciones o simplemente desea jugar con el código que puede instalar Zoomba ejecutando lo siguiente desde el directorio root :
pip install .
o si tiene la intención de ejecutar pruebas unitarias:
pip install .[ testing ]
Para acceder a las palabras clave en la biblioteca, simplemente agregue lo siguiente a la configuración de su archivo de robot (dependiendo de lo que necesite):
** * Settings ** *
Library Zoomba . APILibrary
Library Zoomba . GUILibrary
Library Zoomba . SOAPLibrary
Las pruebas de ejemplo se pueden encontrar en el directorio de muestras.
El directorio de prueba también puede contener pruebas, pero tenga en cuenta que estos se usan para las versiones de prueba y pueden no ser tan sencillos para usar como las que se encuentran en el directorio de muestras.
Para hacer contribuciones, consulte las pautas contribuyentes.
Vea el directorio .gitooks para que los scripts ayuden en el desarrollo.
Las preguntas generales del marco del robot deben dirigirse al Foro de la Comunidad.
Para preguntas y problemas específicos para Zoomba, cree un problema aquí en GitHub.