python自动化测试之unittest
一、unittest是python内置的单元测试框架,其支持测试自动化。它分为四个组件:
1、TestCase 测试用例 每个测试类继承unittest.TestCase,通过继承,来实现用例的继承,在Unittest中,测试用例都是通过test来识别的。可以使用它的很多方法,如setUp()、tearDown()、setUpClass()、tearDownClass()。断言assertTrue、assertEqual。
2、TestSuit 测试套件。用来收集测试用例
# 初始化一个加载器, test_loader
loader = uinttest.TestLoader()
suit = loader.discover(case_path)
3、TestFixture 测试夹具 对一个测试用例环境的搭建和销毁,就是一个fixture,通过setUp()和tearDown()方法实现
@classmethod
def setUpClass(cls):
print("一个测试类只执行一次的前置")
@classmethod
def tearDownClass(cls):
print("一个测试类只执行一次的后置")
# 固定的名称,不改
def setUp(self):
"""前置"""
print("链接数据库")
def tearDown(self):
"""后置"""
print("断开数据库")
4、TestRunner:运行器,执行测试用例
with open("test_reports.html", 'wb') as f:
runner = HTMLTestRunner(
f,
title='python29期第一次测试报告',
description="测试报告的描述",
tester='yuz'
)
runner.run(suit_total)
二、unittest 的注意事项
1, 模块名称 test_ ...
2. 类名: Test...
3. 测试用例的方法名称 test_...