Outils pour utilisateurs

Outils du site


dev:python:unittest:start

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentesRévision précédente
Prochaine révision
Révision précédente
dev:python:unittest:start [2022/01/05 17:02] yoanndev:python:unittest:start [2022/07/20 19:51] (Version actuelle) yoann
Ligne 7: Ligne 7:
 **unittest** est un framework de test unitaires, c'est une implémentation Python des frameworks de type [[https://en.wikipedia.org/wiki/XUnit|xUnit]] inspirés de **SUnit**(Smalltalk's SUnit), conçu par Kent Beck in 1998 pour le langage orienté objet Smalltalk. **unittest** est un framework de test unitaires, c'est une implémentation Python des frameworks de type [[https://en.wikipedia.org/wiki/XUnit|xUnit]] inspirés de **SUnit**(Smalltalk's SUnit), conçu par Kent Beck in 1998 pour le langage orienté objet Smalltalk.
  
-  * Runner: Le programme en charge d'exécuter les tests créés via le framework et présentant les résultats. +  * Runner: Le programme en charge d'exécuter les tests créés via le framework et de présenter les résultats. 
-  * Test fixture: initialise un environnement/contexte dans lequel les tests peuvent s’exécuter de façon re.  +  * Test fixture: Aménagement ou initialisation d'un environnement/contexte nécessaire à un ou plusieurs tests: création de répertoire, base de données temporaires, démarrage de processus serveur, etc
-  * Test case (cas d'utilisation): ensemble de conditions pour lesquelles on souhaite vérifier que le système réagit correctement.+  * Test case (cas d'utilisation ou scénario de test): élément de base des tests. Il attend une réponse spécifique pour un ensemble particulier d'entrées. Le scénario considère un ensemble de conditions pour lesquelles on souhaite vérifier que le système réagit correctement.
   * Test suite: collection de tests utilisée pour montrer qu'un programme réagit comme prévu dans l'ensemble des situation décrites par les tests.    * Test suite: collection de tests utilisée pour montrer qu'un programme réagit comme prévu dans l'ensemble des situation décrites par les tests. 
  
 ===== Usage ===== ===== Usage =====
 +
  
   * Les fichiers de tests sont des scripts Python dont le nom est préfixés par ''test_''   * Les fichiers de tests sont des scripts Python dont le nom est préfixés par ''test_''
 +  * On importe le module **unittest**
   * Le script de test doit contenir une classe qui dérive de la classe ''unittest.TestCase''   * Le script de test doit contenir une classe qui dérive de la classe ''unittest.TestCase''
-  * Les méthodes de tests contenues dans la classe doivent commencer par le mot clé ''test''.+  * Les méthodes de tests contenues dans la classe doivent commencer par le mot clé ''test''Cette convention permet au runner d'identifier les méthodes de test. 
  
-On importe le module **unittest** 
  
 <code python> <code python>
Ligne 30: Ligne 32:
 </code> </code>
  
-On crée une classe de test elle doit impérativement+On crée une classe de test elle doit impérativement hériter d'**unittest.TestCase**
-  * Avoir un nom qui commence par **Test** +
-  * Hériter d'**unittest.TestCase**+
  
 ===== Les méthodes assertX ===== ===== Les méthodes assertX =====
Ligne 50: Ligne 50:
 python -m unittest discover python -m unittest discover
  
-Executer un script de test en particulier+Exécuter un script de test en particulier
 python -m unittest test_file.py python -m unittest test_file.py
  
Ligne 57: Ligne 57:
 python test_file.py python test_file.py
 </code> </code>
 +
 +
 +===== Exemples =====
  
  
Ligne 64: Ligne 67:
  
   * http://sametmax.com/un-gros-guide-bien-gras-sur-les-tests-unitaires-en-python-partie-2/   * http://sametmax.com/un-gros-guide-bien-gras-sur-les-tests-unitaires-en-python-partie-2/
 +  * https://docs.python.org/fr/3/library/unittest.html
 +  * https://www.youtube.com/watch?v=apgReCCAQr4
dev/python/unittest/start.1641402135.txt.gz · Dernière modification : 2022/01/05 17:02 de yoann