Pycharm 运行 详细模式下的单元测试
Pycharm running unittest in verbose mode
有没有办法在详细模式下 运行 在 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()
它returns:
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
您所要做的就是使用 setUp
方法并像这样调用 _testMethodDoc
属性:
def setUp(self):
print(self._testMethodDoc)
你当然可以为你的单元测试创建你自己的基础 class 继承自 unittest.TestCase
) 但是如果你想稍后重写 setUp
方法,你将不得不调用super
。可以选择缩短代码实现:
class BaseUnitTest(unittest.TestCase):
def setUp(self):
print(self._testMethodDoc)
class KnownValues(BaseUnitTest):
...
试试这个
if __name__ == '__main__':
unittest.main(verbosity=2)
有没有办法在详细模式下 运行 在 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()
它returns:
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
您所要做的就是使用 setUp
方法并像这样调用 _testMethodDoc
属性:
def setUp(self):
print(self._testMethodDoc)
你当然可以为你的单元测试创建你自己的基础 class 继承自 unittest.TestCase
) 但是如果你想稍后重写 setUp
方法,你将不得不调用super
。可以选择缩短代码实现:
class BaseUnitTest(unittest.TestCase):
def setUp(self):
print(self._testMethodDoc)
class KnownValues(BaseUnitTest):
...
试试这个
if __name__ == '__main__':
unittest.main(verbosity=2)