Django, framework web
Bromine
Présentation
Django utilise le module unittest2 (équivalent Python de JUnit) pour tous ses tests. Le principe reste le même : une classe accueille les tests, elle possèdes des méthodes hook qui seront exécutées à certains évènements dans le processus de tests (avant chaque test, à la fin de tous les tests, etc.), et chaque méthode commençant par test est exécutée dans l'ordre lexicographique.
Exemple
class SimpleTest ( unittest . TestCase ):
def test_basic_addition ( self ):
self . assertEqual (1 + 1, 2)
Le framework de tests créé une database en mémoire à la volée (c'est la que les fîxtures sont très utiles pour proposer un jeu de données cohérent et testable). La documentation complète pour les tests unitaires est diponible ici : https://docs.djangoproject.com/en/dev/ topics/testing/ Je ne m'étenderai pas sur les tests unitaires, en revanche Django fournit une suite d'outils dédiés aux tests sur le framework, comme par exemple un (faux) client web. Celui-ci simule un browser web et permet d'exectuer des requêtes HTTP et de manipuler côté client les vues de l'application.