在运行测试时,有时需要直接跳过某些测试用例,或者当用例符合某个条件时跳过测试。
unittest提供了相应的装饰器:
@unittest.expectedFailure():不管结果如何,都将测试结果设置为失败
@unittest.skipUnless(condition, reason):条件成立时执行
@unittest.skipIf(condition, reason):条件成立时跳过不执行
@unittest.skip(reason):直接跳过不执行用例
@unittest.expectedFailure()
def test_case5(self):
a = None
self.assertIsNone(a, msg="assertIsNone: a is none")
@unittest.skipUnless(1==1, "条件成立时执行")
def test_case6(self):
a = 'b'
self.assertIsNotNone(a, msg="assertIsNotNone: a is not None")
@unittest.skip("skip")
def test_case7(self):
a = Count(2, 3)
b = Count(3, 4)
# 判断 a 是否是 b 的一个实例
self.assertIsInstance(a, b, msg="assertIsInstance: ")
@unittest.skipIf(1 < 2, "条件成立时跳过")
def test_case8(self):
a = 'second'
b = "se"
# 判断 a 是否是 b 的一个实例
self.assertNotIsInstance(a, b, msg="assertIsInstance: ")