2012-11-29 283 views
24

我遇到了一些单元测试。单元测试未运行

这是我能想出的最简单的例子:

#testito.py 
import unittest 

class Prueba(unittest.TestCase): 

    def setUp(self): 
     pass 
    def printsTrue(self): 
     self.assertTrue(True) 

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

问题是,运行此没有任何效果:

$ python testito.py 

---------------------------------------------------------------------- 
Ran 0 tests in 0.000s 

OK 

我抓我的头,我看不出有任何上面的代码有问题。 现在发生了几次测试,我不知道下一步该怎么做。 有什么想法?

回答

49

默认情况下,只有与test启动功能,其名称是运行:

class Prueba(unittest.TestCase): 

    def setUp(self): 
     pass 
    def testPrintsTrue(self): 
     self.assertTrue(True) 

unittest basic example

一个TestCase,只需要继承unittest.TestCase创建。三个单独的测试用名称以字母test开头的方法定义。这个命名约定告诉测试运行者哪些方法代表测试。

+2

Gahhhhh!我知道这很愚蠢。 – tutuca

+6

这是一个令人沮丧的陷阱... – Charlie

+1

只是为什么testPrints而不是test_prints –