UnitTest 测试框架 详解使用

UnitTest核心要素

1. TestCase   一个TestCase就是一条测试用例 
2. TestSuite   多条测试用例集合在一起
3. TextTestRunner   (翻译:测试执行)是用来执行测试用例套件
4. Fixture   治具 是一个概述,对一个测试用例环境的搭建和销毁

测试用例

一个TestCase就是一条测试用例;

使用:
    1. 导包:import unittest             --> 导入unitest框架
    2. 新建类继承:unittest.TestCase             --> 新建测试类继承unittest.TestCase

提示:
    1). 测试用例:在自动化测试中,一条用例就是一个完整的测试流程;                
    2). 测试方法名称命名必须以test开头;
       (原因:unittest.TestCase类批量运行的方法是搜索执行test开头的方法)

TestSuite

说明:(翻译:测试套件)多条测试用例集合在一起,就是一个TestSuite;

使用:
    1. 实例化:     suite=unittest.TestSuite()                    
                 (suite:为TestSuite实例化的名称)
    2. 添加用例:suite.addTest("ClassName(MethodName)")    
                 (ClassName:为类名;MethodName:为方法名)

    3. 添加扩展:suite.addTest(unittest.makeSuite(ClassName))
                 (搜索指定ClassName内test开头的方法并添加到测试套件中)

提示:
    1). 一条测试用例(.py)内,多个方法也可以使用测试套件
    2). TestSuite需要配合TextTestRunner才能被执行

TextTestRunner

说明:(翻译:测试执行)是用来执行测试用例套

使用:
    1. 实例化: runner=unittest.TextTestRunner()
                (runner:TextTestRunner实例化名称)
    2. 执行:    runner.run(suite)
                (suite:为测试套件名称)

治具

说明:是一个概述,对一个测试用例环境的搭建和销毁就是一个Fixture;

使用:
    1. 初始化(搭建):def setUp(self)        --> 首先执行
       (setUp:此方法继承于unittest.TestCase)        
    2. 结束(销毁):    def tearDown(self)        --> 最后执行
       (tearDown:此方法继承于unittest.TestCase)
提示:
    1. 必须继承unittest.TestCase类,setUp、tearDown才是一个Fixture;
    2. setUp:一般做初始化工作,比如:实例化浏览器、浏览器最大化、隐式等待设置
    3. tearDown:一般做结束工作,比如:退出登录、关闭浏览器
    4. 如果一个测试类有多个test开头方法,则每个方法执行之前都会运行setUp、结束时运行tearDown

你可能感兴趣的:(测试,测试,自动化测试,python,UnitTest框架)