目录
Unittest
Unittest是python的一个单元测试框架,但是它不仅适用于单元测试,还适用自动化测试用例的开发与执行。我们可以很方便的使用它组织执行测试用例,使用它提供的丰富的断言方法进行测试结果比对,并最终结合HTMLTestRunner生成测试报告完成整个自动化测试流程。

简单使用示例
创建被测类calculator.py
class count:
def _init_(self,a,b)
self.a = int(a)
self.b = int(b)
#计算加法
def add(self):
return self.a + self.b
通过unittest单元测试框架编写单元测试用例 test.py
from calculator import count
import unitest
class TestCount(unitest.TestCase):
def setUp(self):
print("test start")
def test_add(self):
j = count(2,3)
self.assertEqual(j.add(),5)
def tearDown(self):
print("test end")
if _name_ == '_main_':
unittest.main()
说明:
- 首先引入unitest模块,创建testcount类继承unitest的testcase类。
- setUp():用于测试用例执行前的初始化工作,与tearDown()相呼应,用于执行后的善后工作。
- test_add中调用count类并传入要计算的数,通过调用add()方法得到两数相加的返回值,这里不再使用繁琐的异常处理,而是调用unitest框架所提供的assertEqual()对add()的返回值进行断言判断两者是否相等。assertEqual()方法是由testcase类继承而来的。
- main():unitest提供了全局的main()方法,使用它可以方便的将一个单元测试模块变成可以直接运行的测试脚本。main()方法使用Testloader类来搜索所有包含在该模块中以“test”命名开头的测试方法。
- name:作为模块的内置属性,简单地说就是.py文件的调用方式。.py文件有两种使用方式作为模块调用和直接使用,如果它等于“main”就表示是直接使用
重要概念
- TestCase:一个TestCase的实例就是一个测试用例,是一个完整的测试流程,包括测试前准备环境的搭建(setUp),实现测试过程的代码(run),测试后环境的还原(tearDown).
- Test Suite:把多个测试用例集合在一起来执行。可以通过addTest加载TestCase到Test Suite中,从而返回一个TestSuite实例。
- Test Runner:测试的执行,通过TextTestRunner类提供的run()方法来执行Test Suite/TestCase。Test Runner可以使用图形界面,文本界面,或者返回一个特殊的值的方式来表示测试执行的结果。
- Test Fixture:对一个测试用例环境的搭建和销毁。通过覆盖TestCase的setUp()和tearDown()方法来实现。tearDown()为下一个测试用例提供一个干净的环境。
from calculator impor

最低0.47元/天 解锁文章
2万+

被折叠的 条评论
为什么被折叠?



