unnitest框架和基本结构

一、unittest框架介绍
(一)unittest单元测试测试框架
1、介绍unittest框架
(1)unitest框架是一个python自带的框架
(2)作用:管理和组织测试用例:
当我们写的用例越来越多时,我们就需要考虑用例编写的规范与组织,以便于后期的维护,而unittest正是这样一款工具
(3)常见的单元测试框架:unitest、pytest
二、unittest是Python自带的标准库中的模块,其中包括:
1、TestCase类
2、TestSuite类
3、TestLoader类
4、TextTestRunner类
5、TextTestResult类
6、TestFixture类
解释下:
TestCase:一个Testcase的实例就是一个测试用例,测试用例就是一个完整的测试流程,包括初始化setUp、运行run、测试后的还原tearDown
TestSuite:对一个功能的测试往往需要多测试用例的,可以把多的测试用例集合在一起执行,这就是TestSuite的概念。常用addTest()方法将一个测试用例添加到测试套件中
TextTestRunner:是用来执行测试用例的,其中的run(test)用来执行TestSuite/TestCase。测试的结果会保存在TextTestResult实例中TestFixture:测试准备前要做的工作和测试执行完后要做的工作.包括setUp()和tearDown()。通过覆盖TestCase的setUp和tearDown来实现。
TestLoader:是用来搜索所有以test开头的测试用例,然后将其加入到testsuite中
二、unittest的基本结构
import  unittest   #python中自带的一个自动化框架的库
class   Cms(unittest.TestCase):   # 创建一个类cms,继承unittest.TestCase类
@classmethod
def setUpClass(cls) -> None:  #  类方法开始
print("类的开始")
@classmethod
def  tearDownClass(cls) -> None:  #类方法的结束
print("类的结束")
def setUp(self) -> None:   #方法的开始
print("方法的开始")
def  tearDown(self) -> None:  #方法的结束
print("方法的结束")
def  test_1(self):  #用例都要test命名开头,不是以test不会运行
print(1)
def test_3(self):   #运行顺序:0-9 A-Z a-z
print(3)
def test_a(self):
print("a")
def test_2(self):
print(2)
def test_A(self):
print("A")
def  sy(self):  #私有
print(" 私有")
if name == 'main':
    unittest.main()  #执行所有的用例
备注:
(1)用例开头要用test开头,不以test开头无法运行
(2)执行的顺序按assima来的:0-9A-Za-z
(3)类的开始和类的结束再整个用例中只执行一次
(4)每条用例都要先执行方法开始,在执行方法结束比如:cms中登录,写在方法开始中,cms中运行完后,删除数据,关闭浏览器,写在方法的结束中
(5)unittest.main执行所有的用例

posted @ 2026-05-20 18:03  刘sir金牌讲师  阅读(13)  评论(0)    收藏  举报