【发布时间】:2019-02-28 10:34:57
【问题描述】:
假设我的单元测试设置如下:
import unittest
class BaseTest(object):
def setup(self):
self.foo = None
def test_something(self):
self.assertTrue(self.foo.something())
def test_another(self):
self.assertTrue(self.foo.another())
def test_a_third_thing(self):
self.assertTrue(self.foo.a_third_thing())
class TestA(BaseTest, unittest.TestCase):
def setup(self):
self.foo = FooA()
class TestB(BaseTest, unittest.TestCase):
def setup(self):
self.foo = FooB()
class TestC(BaseTest, unittest.TestCase):
def setup(self):
self.foo = FooC()
现在假设FooC 还没有实现a_third_thing,我只想跳过test_a_third_thing 的TestC 类。有什么方法可以使用 @unittest.skipif 装饰器来做到这一点?或者其他一些方便的方法来跳过这个只针对这个类的测试?
Python 2.7,以防万一
【问题讨论】:
-
BaseTest 应该继承 TestCase
-
您可以覆盖
TestC中的测试,例如def test_a_third_thing(self): pass -
@pylang 这就是我最终要做的,想要添加它作为答案吗?
-
完成。如果您确实找到了跳过测试的方法,我很想知道您发现了什么。
标签: python python-unittest python-decorators