如何仅使用suite.addTest运行特定的测试用例?(Python3.6 + unittest)

时间:2018-07-07 12:06:02

标签: python-3.6 python-unittest

我想运行一个特定的测试用例,而不是所有测试用例。我认为使用“ addTest”功能是实现它的方法。但这在这里不起作用

以下是我的代码:

#!/usr/bin/env python3
# -*- coding: utf-8 -*-

import unittest
from learnunittest import func

ARU = False


class TestFunc(unittest.TestCase):

    @classmethod
    def setUpClass(cls):
        print("---------------starting-------------\n")

    @classmethod
    def tearDownClass(cls):
        print("----------------ending-------------")

    def test_add(self):
        global ARU
        if self.assertEqual(3, func.add(1, 2)):
            ARU = True
            print('will not run test_add')
        else:
            print('running test_add')

    @unittest.skipIf(ARU, 'Skip')
    def test_minus(self):
        self.assertEqual(1, func.minus(3, 2))
        print('running test_minus')

    def test_divide(self):
        self.assertEqual(2, func.divide(6, 3))
        print('running test_divide')

def suit():
    suite = unittest.TestSuite
    suite.addTest(TestFunc('test_add'))
    return suite


if __name__ == '__main__':
    runner = unittest.TextTestRunner(verbosity=2).run(suit())

运行3例,但没有1例。 输出: enter image description here 并且有一个警告: enter image description here

0 个答案:

没有答案