2016-11-13 76 views
0

我无法在任何地方找到答案。是否有可能在IDLE或CMD中使用unittests运行tests.py? 例如,如果有3次测试,1失败,2通过我会得到的输出,如:在CMD或Python中运行unittests IDLE

python tests.py 
Test1 failed 
Test2 passed 
Test3 passed 

我试图运行该文件,它给了我而已,一个OK

C:PycharmProjects>python testfin1.py 
...... 
---------------------------------------------------------------------- 
Ran 6 tests in 0.002s 

OK 

但是我想要得到所有测试的结果,这可能吗?

回答

1

如果所有的测试都通过了,你只能得到如下的细节,其中6个测试运行并且所有测试都通过了。

C:PycharmProjects>python testfin1.py 
...... 
---------------------------------------------------------------------- 
Ran 6 tests in 0.002s 

OK 

如果出现错误,则显示测试名称失败的堆栈跟踪。您可以详细了解here

+0

如果有失败的测试它只给我失败(失败= 2)和错误。 –

+0

正如文档(上面粘贴的链接)中所提到的,您可以运行python -m unittest -v test_module以高度冗长的方式运行测试。 – falloutcoder

+0

啊,我明白了。谢谢。 –

0

如果有任何测试失败,您将看到失败的错误消息。试试这个例子 -

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()