自动测试框架unittest

版权所有,如需转载,请联系作者

一.基本测试结构

测试有两部分组成:

  • 管理测试依赖库的代码
  • 测试本身

单个测试通过继承TestCase并覆盖或添加适当方法来创建。

import unittest

class SimpleTest(unittest.TestCase):
   def test(self):
      self.failUnless(True) #如果True总为False则测试不通过

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

二.测试结果

结果 描述
ok 测试通过
FAIL 测试没通过,产生一个AssertionError异常
ERROR 测试产生AssertionError之外的某个异常

一个测试或者生成一个错误的时候,输出中会包含traceback。

三.断言真值

断言结果是否为True:

  • assertTrue()
  • failUnless()

断言是否为False:

  • assertFalse()
  • failIf()

四.严格相等

可以使用下面两种方法测试值的严格相等性:

  • failUnlessEqual()
  • failIfEqual()

五.近似相等

使用下面两种方法测试浮点数的近似相等性:

  • failIfAlmostEqual()
  • failUnlessAlmostEqual()

有一个可选参数places来指定测试所使用的小数位数。

六.测试异常

使用下面两种方法断言代码是否抛出异常:

  • failUnlessRaises()
  • assertRaises()

七.测试固件

固件是测试所需的外部资源。TestCase包含一个特殊的hook, 用来配置和清理测试所需要的所有固件。配置固件需要覆盖setUp()方法,要完成清理,则需要覆盖tearDown()方法。

你可能感兴趣的:(自动测试框架unittest)