Comment ignorer de force un test unitaire dans Django?
@skipif et @skipunless sont tout ce que j’ai trouvé, mais je veux juste sauter un test dès maintenant pour le débogage pendant que je corrige quelques points.
Le module le plus puissant de Python a quelques décorateurs:
Il y a de vieux @skip
:
from unittest import skip @skip("Don't want to test") def test_something(): ...
Si vous ne pouvez pas utiliser @skip
pour une raison quelconque, @skipIf
devrait fonctionner. Il suffit de le tromper pour toujours ignorer l’argument True
:
@skipIf(True, "I don't want to run this test yet") def test_something(): ...
documents les plus récents
Docs sur les tests de saut
Si vous souhaitez simplement ne pas exécuter certains fichiers de test, le meilleur moyen est probablement d’utiliser fab
ou un autre outil et d’exécuter des tests spécifiques.
Django 1.10 permet l’utilisation de balises pour les tests unitaires. Vous pouvez ensuite utiliser l’ --exclude-tag=tag_name
pour exclure certaines balises:
from django.test import tag class SampleTestCase(TestCase): @tag('fast') def test_fast(self): ... @tag('slow') def test_slow(self): ... @tag('slow', 'core') def test_slow_but_core(self): ...
Dans l’exemple ci-dessus, pour exclure vos tests avec la balise ” slow
“, vous devez exécuter:
$ ./manage.py test --exclude-tag=slow