使用IDLE运行Python PyUnit单元测试
发布时间:2020-09-25 18:00:52  所属栏目:Python  来源:互联网 
            导读:在IDLE中有没有办法直接运行PyUnit(unittest模块)单元测试? 我问,因为我有一个简短的测试模块,当我运行它与python mymodule.py从Cygwin shell我得到所有测试通过,但是当我使用Run-运行模块从IDLE测试通过,但是我得到一个异常(SystemExit:False). 例如,以下
                
                
                
            | 
                         在IDLE中有没有办法直接运行PyUnit(unittest模块)单元测试? 我问,因为我有一个简短的测试模块,当我运行它与python mymodule.py从Cygwin shell我得到所有测试通过,但是当我使用Run->运行模块从IDLE测试通过,但是我得到一个异常(SystemExit:False). 例如,以下是一个示例测试模块来重现: #!/usr/bin/python
import unittest
class fooTests(unittest.TestCase):
    def setUp(self):
        self.foo = "bar"
    def testDummyTest(self):
        self.assertTrue(True)
    def testDummyTestTwo(self):
        self.assertEquals("foo","foo")
    def tearDown(self):
        self.foo = None
if __name__ == '__main__':
    unittest.main() 
 当我使用python fooTests.py从Cygwin shell运行它时,它会产生: $python fooTests.py .. ---------------------------------------------------------------------- Ran 2 tests in 0.000s OK 但是当我在IDLE中编辑fooTests.py并且我运行 – >运行模块,由IDLE生成的新Python Shell产生: >>> ================================ RESTART ================================
>>> 
..
----------------------------------------------------------------------
Ran 2 tests in 0.031s
OK
Traceback (most recent call last):
  File "C:SomepathinfoIshortenedfooTests.py",line 20,in <module>
    unittest.main()
  File "C:Python26libunittest.py",line 817,in __init__
    self.runTests()
  File "C:Python26libunittest.py",line 865,in runTests
    sys.exit(not result.wasSuccessful())
SystemExit: False
>>> 
 我做错了什么,产生这种追溯,特别是如何修复它,以便我可以在IDLE内运行Run->运行模块(或F5)来快速运行单元测试? (这当然一定是一个简单的问题,但是我的快速尝试已经证明是无效的.) 解决方法你也可以做if __name__ == '__main__':
    unittest.main(exit=False) 
 如果你使用Python> = 2.7 (编辑:莱芜站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!  | 
                  
