Pycharm在冗长模式下运行单元测试

6

在Pycharm中以详细模式运行单元测试的方法是什么?我想要一种方式来查看测试函数中的文档字符串,以便查看一些已运行测试的信息。

class KnownValues(unittest.TestCase):
    known_values = (
        ([1, 2],[[1, 2]]),
        ([1, 2, 3], [[1, 2], [1, 2, 3]]),
        ([1, 2, 3, 4],[[1, 2], [1, 2, 3, 4]]),
        ([1, 2, 3, 4, 5],[[1, 2], [1, 2, 3], [1, 2, 3, 4, 5]]),
        ([1, 2, 3, 4, 5, 6],[[1, 2], [1, 2, 3], [1, 2, 3, 4], [1, 2, 3, 4, 5, 6]]),
              )

    def test_check(self):
        '''This should check is the function returning right'''
        for arg, result in self.known_values:
            print("Testing arg:{}".format(arg))
            assert program.lister(arg) == result


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

它返回:
Testing started at 19:38 ч. ...
Testing arg:[1, 2]

Process finished with exit code 0

我想获得:

test_check (__main__.KnownValues)
This should check is the function returning right ... Testing arg:[1, 2]
ok

----------------------------------------------------------------------
Ran 1 test in 0.001s

OK
2个回答

1

你只需要使用setUp方法并像这样调用_testMethodDoc属性:

def setUp(self):
    print(self._testMethodDoc)

当然,您可以创建自己的基类用于单元测试,该基类继承自unittest.TestCase,但是如果您稍后想要覆盖setUp方法,则必须调用super。这是实现更短代码的选项:

class BaseUnitTest(unittest.TestCase):
    def setUp(self):
        print(self._testMethodDoc)


class KnownValues(BaseUnitTest):
    ...

0

试试这个

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

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接