Skip to main content

Qu'est-ce qu'un cadre d'automatisation des tests?

Un cadre d'automatisation des tests est un ensemble d'outils utilisés pour effectuer des tests de logiciels automatisés.Les cadres d'automatisation des tests offrent des avantages significatifs par rapport aux tests manuels et sont couramment utilisés dans le développement rapide des logiciels.Ces cadres permettent aux développeurs de logiciels de créer des tests, d'exécuter des tests et d'analyser les résultats des tests.Un cadre d'automatisation de test peut être motivé par le code, les données, une interface utilisateur graphique (GUI) ou une combinaison de celles-ci.

Les cadres d'automatisation des tests sont nécessaires pour répondre aux besoins du développement rapide des logiciels.Dans le cycle de vie de développement de logiciels en cascade classique, les tests de logiciels étaient une phase discrète effectuée après la mise en œuvre ou le codage.En tant que tels, les tests exécutés par l'homme étaient typiques.

De nombreuses équipes de développement ont remplacé le modèle de cascade par diverses méthodologies de développement de logiciels agiles, qui nécessitent généralement un développement rapide et itératif.Le développement rapide a créé un besoin de tests rapides.Un cadre d'automatisation de test permet à une équipe logicielle d'effectuer des tests automatisés fréquents sur une base de code.Par exemple, plutôt que de nécessiter une phase de test séparée après le développement, une équipe qui utilise un cadre d'automatisation des tests peut choisir d'exécuter une suite complète de tests pendant la nuit, ainsi que des morceaux plus petits de tests automatisés tout au long de la journée à mesure que les modifications sont apportées à la sourceCode.

Le type de framework le plus couramment utilisé est le framework basé sur le code, qui est utilisé pour effectuer des tests de boîte blanche.Les cadres axés sur le code obligent les développeurs à écrire de petits extraits de code, sous la forme de tests unitaires, pour tester la fonctionnalité ou les performances du logiciel.Les développeurs utilisant des cadres axés sur le code doivent prendre soin d'écrire leur logiciel d'une manière testable mdash;Autrement dit, le code doit être modularisé de telle sorte qu'un test unitaire peut appeler un extrait de code et vérifier le résultat.Ces cadres incluent généralement une implémentation de Xunit, où X varie en fonction du langage de programmation testé.

Les cadres de test pilotés par des GUI sont utilisés pour effectuer des tests de boîte noire, en utilisant un outil logiciel comme le ferait un utilisateur, via des entrées de souris et de clavier.Ils pourraient être composés de scripts écrits par des développeurs pour exercer une série de fonctionnalités, ou ils pourraient être composés de scripts générés par des outils, tels que des scripts d'enregistrement et de jeu.Un inconvénient potentiel de ces cadres est que le script se casse chaque fois que l'interface graphique change.Certains cadres GUI-Automation peuvent générer un script qui peut être modifié par un développeur en cas de modifications de l'interface graphique, et d'autres peuvent nécessiter que l'utilisateur crée une nouvelle session d'enregistrement et de jeu.

Les cadres de test basés sur les données effectuent un logicielLes tests à l'aide de données, et ces tests fonctionnent généralement avec des tables de données qui spécifient à la fois les entrées et les sorties.Les données peuvent être conservées à divers endroits, telles que des bases de données, des feuilles de calcul ou des fichiers texte.Les scripts peuvent être écrits pour exécuter des méthodes logicielles prenant les entrées en tant que paramètres et pour valider la valeur de retour des méthodes logicielles par rapport à la sortie.Tout ce qui peut être varié, comme l'environnement dans lequel le test s'exécute, peut également être stocké avec les données et séparé du script de test.Un avantage fourni par ces cadres est la séparation des données et de la logique, ce qui entraîne souvent une maintenance à long terme plus faible.