Comment sauter un test unitaire dans Django?

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