« LeSS - Automatisation des tests » : différence entre les versions

De Wiki Agile
 
(2 versions intermédiaires par le même utilisateur non affichées)
Ligne 52 : Ligne 52 :
Vue globale du test exploratoire :
Vue globale du test exploratoire :


[[Fichier:LeSS-Et-fr.png|800px|sans_cadre|centré|Tests exploratoires]]
[[Fichier:LeSS-Et-fr.png|800px|sans_cadre|centré|Tests exploratoires|link=]]


Qu’est-ce que le test exploratoire ? Dans un de ses articles, James Bach le définit comme étant « la combinaison de l’apprentissage, de la conception de tests et de l’exécution de tests en simultané » – [http://www.satisfice.com/articles/what_is_et.shtml Bach03(vo)]. Cela vient en contraste avec le test scripté traditionnel dans lequel la conception des cas de tests et l’exécution se font de manière séparée et séquentielle avec d’abord la conception et après l’exécution. Le test exploratoire a pour objectif d’utiliser le plus possible la créativité humaine lors de l’exécution des tests, d’en tirer des informations et de les utiliser pour prendre des décisions relatives à la conception des tests. Cela sera plus clair à l’aide de l’exemple suivant :
Qu’est-ce que le test exploratoire ? Dans un de ses articles, James Bach le définit comme étant « la combinaison de l’apprentissage, de la conception de tests et de l’exécution de tests en simultané » – [http://www.satisfice.com/articles/what_is_et.shtml Bach03(vo)]. Cela vient en contraste avec le test scripté traditionnel dans lequel la conception des cas de tests et l’exécution se font de manière séparée et séquentielle avec d’abord la conception et après l’exécution. Le test exploratoire a pour objectif d’utiliser le plus possible la créativité humaine lors de l’exécution des tests, d’en tirer des informations et de les utiliser pour prendre des décisions relatives à la conception des tests. Cela sera plus clair à l’aide de l’exemple suivant :
Ligne 60 : Ligne 60 :
Dans cet exemple, il n’y a pas de script détaillé préconçu ou de cas de test mais plutôt un périmètre de test — une charte. La première étape est d’observer le système et à partir de cette observation de déterminer l’action suivante à savoir la conception des tests. Toutes les techniques traditionnelles de tests et toutes les heuristiques traditionnelles de tests sont utilisées lors de cette phase de conception.
Dans cet exemple, il n’y a pas de script détaillé préconçu ou de cas de test mais plutôt un périmètre de test — une charte. La première étape est d’observer le système et à partir de cette observation de déterminer l’action suivante à savoir la conception des tests. Toutes les techniques traditionnelles de tests et toutes les heuristiques traditionnelles de tests sont utilisées lors de cette phase de conception.


[[Fichier:Less Et scripted difference-fr.png|800px|sans_cadre|centré|Tests exploratoires]]
[[Fichier:Less Et scripted difference-fr.png|800px|sans_cadre|centré|Tests exploratoires|link=]]


== Tests automatisés ==
== Tests automatisés ==
Ligne 83 : Ligne 83 :


=== Supprimer des tests lorsqu’ils n’apportent aucune valeur ===
=== Supprimer des tests lorsqu’ils n’apportent aucune valeur ===
Tests serve multiple purposes. They act as requirements, as verification, and as a safety net preventing system regression.


Les tests servent plusieurs objectifs. Ils servent d’exigences, de vérifications et font aussi office de filet de sécurité pour prévenir la régression du système.
Les tests servent plusieurs objectifs. Ils servent d’exigences, de vérifications et font aussi office de filet de sécurité pour prévenir la régression du système.
When an existing test is not needed anymore—because it is a subset of another test—then delete it. Leaving unnecessary tests brings no benefit but still increases maintenance effort and lowers test execution speed.


Lorsqu’un test existant n’est plus nécessaire — sachant qu’il n’est qu’une sous-partie d’un autre test — supprimez-le. Ne pas supprimer les tests superflus n’apportent rien mais augmentent par contre le travail de maintenance et diminuent la vitesse d’exécution des tests.
Lorsqu’un test existant n’est plus nécessaire — sachant qu’il n’est qu’une sous-partie d’un autre test — supprimez-le. Ne pas supprimer les tests superflus n’apportent rien mais augmentent par contre le travail de maintenance et diminuent la vitesse d’exécution des tests.
Ligne 127 : Ligne 123 :


Voici une liste d’outils d’automatisation de tests communément utilisés :
Voici une liste d’outils d’automatisation de tests communément utilisés :
* [http://www.robotframework.org/ RobotFramework]
* [http://www.robotframework.org/ Robot Framework]
* [https://cucumber.io/ Cucumber]
* [https://cucumber.io/ Cucumber]
* [http://www.fitnesse.org/ FitNesse]
* [http://www.fitnesse.org/ FitNesse]