运行 CMD 或 python IDLE 中的单元测试
Running unittests in CMD or python IDLE
我找不到任何地方的答案。是否可以在 IDLE 或 CMD 中使用单元测试 运行 tests.py?
例如,如果有 3 个测试,1 个失败,2 个通过,我会得到如下输出:
python tests.py
Test1 failed
Test2 passed
Test3 passed
我尝试了 运行 文件,它只给我一个 OK。
C:PycharmProjects>python testfin1.py
......
----------------------------------------------------------------------
Ran 6 tests in 0.002s
OK
但是我想获得所有测试的结果,这可能吗?
如果所有测试都通过,您只会获得如下所示的详细信息,其中 6 项测试 运行 并且全部通过。
C:PycharmProjects>python testfin1.py
......
----------------------------------------------------------------------
Ran 6 tests in 0.002s
OK
如果出现错误,它会显示带有失败测试名称的堆栈跟踪。您可以详细查看 here.
如果任何测试失败,您将看到失败的错误消息。试试这个例子 -
import unittest
class TestStringMethods(unittest.TestCase):
def test_upper(self):
self.assertEqual('foo'.upper(), 'foo')
def test_isupper(self):
self.assertTrue('FOO'.isupper())
self.assertFalse('Foo'.isupper())
if __name__ == '__main__':
unittest.main()
我找不到任何地方的答案。是否可以在 IDLE 或 CMD 中使用单元测试 运行 tests.py? 例如,如果有 3 个测试,1 个失败,2 个通过,我会得到如下输出:
python tests.py
Test1 failed
Test2 passed
Test3 passed
我尝试了 运行 文件,它只给我一个 OK。
C:PycharmProjects>python testfin1.py
......
----------------------------------------------------------------------
Ran 6 tests in 0.002s
OK
但是我想获得所有测试的结果,这可能吗?
如果所有测试都通过,您只会获得如下所示的详细信息,其中 6 项测试 运行 并且全部通过。
C:PycharmProjects>python testfin1.py
......
----------------------------------------------------------------------
Ran 6 tests in 0.002s
OK
如果出现错误,它会显示带有失败测试名称的堆栈跟踪。您可以详细查看 here.
如果任何测试失败,您将看到失败的错误消息。试试这个例子 -
import unittest
class TestStringMethods(unittest.TestCase):
def test_upper(self):
self.assertEqual('foo'.upper(), 'foo')
def test_isupper(self):
self.assertTrue('FOO'.isupper())
self.assertFalse('Foo'.isupper())
if __name__ == '__main__':
unittest.main()