python unittest" X测试在哪里运行"号码来自哪里?

时间:2014-12-30 21:03:35

标签: python testing python-unittest unit-testing

import unittest

class Tests(unittest.TestCase):

    def test_one(self):
      a = 1
      self.assertEqual(a,1)

    def test_two(self):
      b = 2
      c = 3
      d = 4
      self.assertEqual(b,2)
      assert c == 3
      self.assertEqual(d,4)

    def test_three(self):
      e = 5
      f = 6
      self.assertEqual(e,5)
      assert f ==6

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

我得到了3 tests run而显然我有6个断言。我的所有断言都未经过测试吗?

python test.py

...

在0.000秒内进行3次测试

1 个答案:

答案 0 :(得分:1)

unittest报告执行的测试方法的数量,而不是断言的数量。


您可以increase the verbosity level查看已执行的方法:

unittest.main(verbosity=3)

哪会产生:

test_one (__main__.Tests) ... ok
test_three (__main__.Tests) ... ok
test_two (__main__.Tests) ... ok

----------------------------------------------------------------------
Ran 3 tests in 0.000s

OK

请注意:每个测试方法都有一个断言语句/调用被认为是一种很好的做法,请参阅: