Qu’est-ce que Robot Framework ?
Robot Framework est un framework d’automatisation open source, basé sur Python, pour les tests d’acceptation, le développement piloté par les tests d’acceptation (ATDD) et l’automatisation robotisée des processus (RPA). Les tests sont des fichiers texte composés de mots-clés (keywords) lisibles aussi par ceux qui ne programment pas, et les développeurs ajoutent de nouveaux mots-clés en Python, Java ou dans d’autres langages.
Comment fonctionne Robot Framework
Les données de test sont dans des fichiers texte, généralement d’extension .robot, découpés en sections introduites par des en-têtes comme *** Settings ***, *** Variables ***, *** Test Cases *** et *** Keywords ***. Les champs sont séparés par au moins deux espaces. Chaque ligne appelle un mot-clé avec des arguments, et les mots-clés se combinent en mots-clés de plus haut niveau qui décrivent des actions métier.
Les mots-clés viennent de bibliothèques. Robot Framework fournit des bibliothèques standard et dispose d’un large écosystème de bibliothèques externes. Browser Library repose sur Playwright, d’autres couvrent Selenium, les API et les bases de données. Chaque exécution produit des fichiers de rapport, de journal et XML que les serveurs d’intégration continue peuvent lire. Le site robotframework.org indique la version 7.4.2 comme version actuelle, et le framework est soutenu par la Robot Framework Foundation, une organisation à but non lucratif.
Exemple : un test de connexion
Un test nommé Valid Login appelle des mots-clés comme Open Login Page, Input Username, Input Password, Submit Credentials et Welcome Page Should Be Open. Les étapes de bas niveau se trouvent dans la section *** Keywords *** ou dans une bibliothèque : le test se lit comme une exigence. Si l’écran de connexion change, vous corrigez un mot-clé et non chaque test. Cela convient aux tests de régression relus ensemble par le produit et la QA.
Erreurs fréquentes avec Robot Framework
- Écrire de longs tests faits d’étapes de bas niveau au lieu de créer des mots-clés qui décrivent l’intention.
- Mettre de la logique dans les données de test. Les boucles et conditions dans les fichiers
.robotdeviennent vite illisibles : préférez un mot-clé Python. - Copier localisateurs et données de test dans de nombreux tests au lieu d’utiliser variables et fichiers de ressources.
- Mélanger beaucoup de bibliothèques externes sans figer leurs versions.
- Prendre un rapport vert pour une preuve de performance. Les tests fonctionnels ne montrent pas le comportement sous charge.
Robot Framework et les autres outils de test
Robot Framework s’appuie souvent sur d’autres outils. Pour le web, il peut utiliser Playwright via Browser Library, voir ce qu’est Playwright. Pour les API, il peut appeler des points d’accès, ce qui recoupe les tests d’API. Si vous aimez le style d’acceptation lisible en Ruby, comparez Capybara. Les équipes Java regardent aussi souvent TestNG.
Robot Framework vérifie que les fonctions marchent. Pour voir comment un backend se comporte face à de nombreux utilisateurs simultanés, lancez un test de charge. LoadFocus peut exécuter des scripts JMeter existants dans le cloud, voir les tests de charge JMeter. LoadFocus ne s’intègre pas à Robot Framework.
Questions fréquentes
Robot Framework est-il gratuit ?
Oui. Il est open source sous licence Apache 2.0, sans frais de licence.
Faut-il connaître Python pour utiliser Robot Framework ?
Pas pour écrire des tests à partir de mots-clés existants. Pour créer de nouveaux mots-clés ou bibliothèques, on écrit généralement du Python, mais Java et d’autres langages sont possibles.
Qu’est-ce que le test piloté par mots-clés ?
Les tests s’écrivent comme une suite d’actions nommées (mots-clés) plutôt que comme du code. Les mots-clés peuvent être construits à partir d’autres mots-clés, ce qui garde les tests lisibles et réutilisables.
Robot Framework peut-il tester des applications web et des API ?
Oui, grâce aux bibliothèques. Browser Library, basée sur Playwright, et une bibliothèque Selenium couvrent les interfaces web, d’autres couvrent les API et les bases de données.
Robot Framework peut-il faire des tests de charge ?
Pas seul. Il exécute des tests fonctionnels et d’acceptation. Pour mesurer le comportement sous de nombreux utilisateurs simultanés, utilisez un outil de test de charge.
Termes associés
Outils LoadFocus connexes
Mettez ce concept en pratique avec LoadFocus, la plateforme même qui propulse tout ce que vous venez de lire.