Как принудительно пропустить единичный тест в Django?Как вы пропустите единичный тест в Django?
@skipif и @skipunless - это все, что я нашел, но я просто хочу пропустить тест прямо сейчас для отладки, в то время как я получаю несколько поправок.
Как принудительно пропустить единичный тест в Django?Как вы пропустите единичный тест в Django?
@skipif и @skipunless - это все, что я нашел, но я просто хочу пропустить тест прямо сейчас для отладки, в то время как я получаю несколько поправок.
UnitTest модуль Python имеет несколько декораторов:
Существует простой старый @skip
:
from unittest import skip
@skip("Don't want to test")
def test_something():
...
Если вы не можете использовать @skip
по какой-то причине, @skipIf
должны работать. Просто обмануть его, чтобы всегда показывать с аргументом True
:
@skipIf(True, "I don't want to run this test yet")
def test_something():
...
Если вы хотите, чтобы просто не запускать определенные тестовые файлы, лучший способ, вероятно, использовать fab
или другие инструмент и выполнить определенные тесты.
Django 1.10 allows use of tags для модульных испытаний. Затем вы можете использовать --exclude-tag=tag_name
флаг, чтобы исключить определенные теги:
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):
...
В приведенном выше примере, чтобы исключить тесты с «slow
» тега будет работать:
$ ./manage.py test --exclude-tag=slow
Ahh, я не сделал знайте, что вы можете обмануть интерпретатора этим аргументом True. Благодаря! – user798719