你如何跳过Django的单元测试?

时间:2013-07-08 05:08:16

标签: django unit-testing skip django-unittest

如何在Django中强行跳过单元测试?

@skipif和@skipunless是我找到的全部内容,但我只想暂时跳过测试以进行调试,同时我还能解决一些问题。

2 个答案:

答案 0 :(得分:108)

Python的unittest模块有一些装饰器:

有一个简单的@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():
    ...

unittest docs

Docs on skipping tests

如果您希望不运行某些测试文件,最好的方法可能是使用fab或其他工具并运行特定测试。

答案 1 :(得分:45)

Django 1.10 allows use of tags用于单元测试。然后,您可以使用role: {model: 'role'} 标记排除某些标记:

--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