标有@ unittest.skip的单元测试未在nosetests下标记

时间:2014-06-19 20:05:26

标签: python-3.x nose python-unittest

当使用@ unittest.skip并运行测试时,通常跳过的测试用小s标记,并在最后报告计数。

如果我使用nosetests进行测试,测试就会消失,在最终报告中不会留下任何痕迹。我试过--no-skip,但它没有改变任何东西。

如何在鼻子下跑步时跳过“s”标记并跳过总数?

2 个答案:

答案 0 :(得分:4)

看起来你必须提供跳过测试的理由:

from unittest import skip

@skip
def foo_test():
    pass

给出你观察到的内容:

----------------------------------------------------------------------
Ran 0 tests in 0.000s

OK

,同时:

from unittest import skip

@skip("nose likes having good reasons")
def foo_test():
    pass

会给你:

foo_test.foo_test ... SKIP: nose likes having good reasons

----------------------------------------------------------------------
Ran 1 test in 0.003s

OK (SKIP=1)

答案 1 :(得分:1)

我通过nose装饰器(在测试方法级别)标记要在@nottest中跳过的测试,并且标记为 S 并列在数字中在最后跳过测试。

为了得到你导入的装饰器:

from nose.tools import nottest