RobotFramework-Zoomba est une collection de bibliothèques couvrant l'interface graphique, l'API REST et l'automatisation des API de savon à l'aide de Robot Framework. Ces bibliothèques sont des extensions des bibliothèques existantes de séléniumlabrary, de demandes et de sudslibrary.
Zoomba ajoute une quantité importante de prise en charge de validation des données pour l'API de repos et de savon et étend les fonctionnalités pour l'automatisation typique de l'interface graphique.
En tant qu'équipe commençant le voyage de l'automatisation avec Robot Framework - nous avons constaté qu'il y avait un certain temps passé à accélérer nos bibliothèques et RobotFramework-Zoomba vise à faciliter ce processus pour les nouveaux projets.
Voir la documentation des mots clés de la bibliothèque API, SOAP ou GUI pour des informations plus spécifiques sur la fonctionnalité.
Des exemples de tests peuvent être trouvés dans le répertoire des échantillons.
Lorsque vous travaillez avec des pages Web de temps de chargement variables, vous vous retrouvez probablement à exécuter de nombreux appels comme:
Wait Until Page Contains Element locator
Click Element locator
Pour plus de facilité d'utilisation, nous en avons combiné beaucoup de mots clés simples: une ligne:
Wait For And Click Element locator
Wait For And Click Text text
Wait For And Select From List list_locator target_locator
Un autre mot clé qui est particulièrement utile est le moment où vous attendez que JavaScript se termine sur une page avant de continuer:
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
Cette bibliothèque enveloppe la bibliothèque des demandes afin que nous ayons créé un ensemble de mots clés pour permettre facilement aux utilisateurs de faire des demandes dans un seul mot-clé:
Call Get Request ${ headers_dictionary } endpoint query_string
Call Post Request ${ headers_dictionary } endpoint query_string ${ data_payload }
Après avoir reçu vos données, nous avons facilité la validation incroyable. Valider la réponse contient la réponse attendue prend votre demande reçue et les compare à vos données attendues. S'il y a des erreurs, il est constaté que cela rapportera la ligne par ligne ce qu'ils sont.
Validate Response Contains Expected Response ${ json_actual_response } ${ json_expected_response }
S'il y a des données incompatibles, cela ressemblera à ceci:
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 vous vouliez ignorer une clé telle que la «mise à jour_date», vous définissez simplement la variable `` ignoré_keys '' sur cette clé ou une liste de clés:
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 bibliothèque Zoomba est facilement installée à l'aide du fichier setup.py
dans le répertoire domestique. Exécutez simplement la commande suivante pour installer Zoomba et ses dépendances:
pip install robotframework - zoomba
Si vous décidez de retirer le repo localement pour faire des contributions ou si vous souhaitez simplement jouer avec le code, vous pouvez installer Zoomba en exécutant ce qui suit à partir du répertoire racine :
pip install .
ou si vous avez l'intention d'exécuter des tests unitaires:
pip install .[ testing ]
Pour accéder aux mots clés de la bibliothèque, ajoutez simplement ce qui suit à vos paramètres de fichier robot (selon ce dont vous avez besoin):
** * Settings ** *
Library Zoomba . APILibrary
Library Zoomba . GUILibrary
Library Zoomba . SOAPLibrary
Des exemples de tests peuvent être trouvés dans le répertoire des échantillons.
Le répertoire de test peut également contenir des tests, mais sachez que ceux-ci sont utilisés pour les versions de tests et peuvent ne pas être aussi simples à utiliser que ceux du répertoire des échantillons.
Pour effectuer des contributions, veuillez vous référer aux directives contributives.
Voir le répertoire .githooks pour que les scripts aident au développement.
Les questions générales du cadre du robot devraient être adressées au forum communautaire.
Pour les questions et les problèmes spécifiques à Zoomba, veuillez créer un problème ici sur GitHub.