unittest-跳过测试用例

跳过测试用例

从Python3.1版本开始,unittest支持跳过单个测试方法甚至整个测试类。 也就是说,某些情况下,我们需要跳过指定的用例。 我们可以使用unittest提供的相关装饰器来完成:

decorators description
@unittest.skip(reason) 无条件地跳过装饰测试用例。 理由应该描述为什么跳过测试用例。
@unittest.skipIf(condition, reason) 如果条件为真,则跳过修饰的测试用例。
@unittest.skipUnless(condition, reason) 除非条件为真,否则跳过修饰的测试用例。
@unittest.expectedFailure 将测试标记为预期的失败。如果测试失败,将被视为成功。如果测试用例通过,则认为是失败。
expection unittest.SkipTest(reason) 引发此异常以跳过测试测试用例。

示例

import unittest

@unittest.skip('无条件跳过该用例类')
class MyTestCase1(unittest.TestCase):

    @unittest.skip('无条件跳过该用例')
    def test_case_01(self):
        # print('执行成功')
        self.assertEqual('A', 'A')
    @unittest.skipIf(condition=1 < 2, reason='条件为真跳过')
    def test_case_02(self):
        # print('执行成功')
        self.assertEqual('c', 'c')


class MyTestCase2(unittest.TestCase):

    def test_case_03(self):
        # print('执行成功')
        self.assertEqual('A', 'A')
    def test_case_04(self):
        # print('执行成功')
        self.assertEqual('c', 'c')


if __name__ == '__main__':
    unittest.main(verbosity=2)

需要强调的是,如果同时为用例类和该类中的用例添加了跳过,那么用例类跳过优先级高。

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容