grimboite/old/Python-tests.md

1.1 KiB

Title: Tests en Python Date: 2015-02-26 Status: draft

Les tests unitaires permettent de garder la main sur le comportement attendu par une fonction, un ensemble de fonctions ou un module en particulier.

Dans les langages compilés et fortement typés, une partie du comportement à tester est éludée dès la compilation, car les types sont vérifiés à ce moment-là. Si vous lui filez un tableau alors qu'il s'attend à une liste, le compilateur vous le dira dès que possible. Dans un langage interprété ou faiblement typé par contre, la comparaison de type ne sera faite qu'à l'exécution. Cela implique deux choses:

  1. Que le flux de l'application passe dans ce morceau de code. Sans cela, cela deviendra du code mort (jusqu'à ce qu'on revienne dedans et que tout explose).

http://docs.python-guide.org/en/latest/writing/tests/ https://docs.djangoproject.com/en/dev/topics/testing/

Il y a plusieurs types de tests:

  • BDD : Behavior Driven Development
  • TDD : Tests Driven Development
  • DDD : Document Driven Development

BDD

Pour les tests de comportement, il y a notamment [Lettuce]