当前位置: 移动技术网 > IT编程>脚本编程>Python > python 测试实现方法

python 测试实现方法

2019年04月05日  | 移动技术网IT编程  | 我要评论

思兰朵焕颜祛斑霜,合山市幼儿园,江寒青

 1)doctest
使用doctest是一种类似于命令行尝试的方式,用法很简单,如下
复制代码 代码如下:

def f(n):
"""
>>> f(1)
1
>>> f(2)
2
"""
print(n)

if __name__ == '__main__':
import doctest
doctest.testmod()

应该来说是足够简单了,另外还有一种方式doctest.testfile(filename),就是把命令行的方式放在文件里进行测试。

2)unittest
unittest历史悠久,最早可以追溯到上世纪七八十年代了,c++,java里也都有类似的实现,python里的实现很简单。
unittest在python里主要的实现方式是testcase,testsuite。用法还是例子起步。
复制代码 代码如下:

from widget import widget
import unittest
# 执行测试的类
class widgettestcase(unittest.testcase):
def setup(self):
self.widget = widget()
def teardown(self):
self.widget.dispose()
self.widget = none
def testsize(self):
self.assertequal(self.widget.getsize(), (40, 40))
def testresize(self):
self.widget.resize(100, 100)
self.assertequal(self.widget.getsize(), (100, 100))
# 测试
if __name__ == "__main__":
# 构造测试集
suite = unittest.testsuite()
suite.addtest(widgettestcase("testsize"))
suite.addtest(widgettestcase("testresize"))

# 执行测试
runner = unittest.texttestrunner()
runner.run(suite)

简单的说,1>构造testcase(测试用例),其中的setup和teardown负责预处理和善后工作。2>构造测试集,添加用例3>执行测试需要说明的是测试方法,在python中有n多测试函数,主要的有:
testcase.assert_(expr[, msg])
testcase.failunless(expr[, msg])
testcase.asserttrue(expr[, msg])
testcase.assertequal(first, second[, msg])
testcase.failunlessequal(first, second[, msg])
testcase.assertnotequal(first, second[, msg])
testcase.failifequal(first, second[, msg])
testcase.assertalmostequal(first, second[, places[, msg]])
testcase.failunlessalmostequal(first, second[, places[, msg]])
testcase.assertnotalmostequal(first, second[, places[, msg]])
testcase.failifalmostequal(first, second[, places[, msg]])
testcase.assertraises(exception, callable, ...)
testcase.failunlessraises(exception, callable, ...)
testcase.failif(expr[, msg])
testcase.assertfalse(expr[, msg])
testcase.fail([msg])

如对本文有疑问,请在下面进行留言讨论,广大热心网友会与你互动!! 点击进行留言回复

相关文章:

验证码:
移动技术网