unittest单元测试框架

 
Unittest单元测试框架
 
UnitTest套件以及运行的方法 TestsuiteTest Runner::
一个功能的验证往往需要多个测试用例,可以把多个测试用例集合在一起执行,这就产生了测试套件TestSuite的概念。TestSuite用来组装单个测试用例。
可以通过addTest加载TestCase到TestSuite中,从而返回一个TestSuite实例。而且TestSuite也可以嵌套TestSuite
 
 做过自动化测试的同学应该都知道python中的unittest框架,它是python自带的一套测试框架,学习起来也相对较容易
,unittest框架最核心的概念:
 a:  test case:就是我们的测试用例,unittest中提供了一个基本类TestCase,可以用来创建新的测试用例,一个TestCase的实例就是一个测试用例;
unittest中测试用例方法都是以test开头的,且执行顺序会按照方法名的ASCII值排序
 
 b:test suite:测试套件,用来把需要一起执行的测试用例集中放到一块执行,相当于一个篮子。我们可以使用TestLoader来加载测试用例到测试套件中 
 c:testranner测试的执行也是单元测试中非常重要的一个概念,一般单元测试框架中都会提供丰富的执行策略和执行结果。在Unittest单元测试框架中,通
过TextTestRunner类提供的run()方法来执行test suite/test case。test runner可以使用图形界面、文本界面,或返回一个特殊的值等方式来表示测试执行的结果
  
实例讲解:
import unittest
import os
class Test_ui(unittest.TestCase):
 
def test01(self):
print("测试01")
def test02(self):
print("测试02")
def test03(self):
print("测试04")
 
if __name__ == '__main__':
unittest.main()

 

 
方法1
unittest.main()方法执行当前类中的所有的测试

 

方法二:
unitest.Testsuite() 类
测试套件,理解成测试用例集一系列的测试用例,或
测试套件,理解成测试用例的集合和测试套件的集合
当运行测试套件时,则运行里面添加的所有测试用例"""
 
通过suite()中的addtest方法将用例添加到
suite这个套件当中----单个用例进行添加"""
"""实例化测试套件suite类对象"""
suite = unittest.TestSuite()
"""(Test_ui:为类名:::'test02':为方法名)"""
suite.addTest(Test_ui('test02'))
suite.addTest(Test_ui('test01'))
suite.addTest(Test_ui('test03'))
 
""" TextTestRunner是来运行测试套件的
先先实例化一个对象,通过run方法来执行
测试套件中的用例"""
runner = unittest.TextTestRunner()
runner.run(suite)

 

 
方法3:
testsuite以一个列表的形式进行接收,添加到测试套件当中
case = [Test_ui('test02'), Test_ui('test03')]
suite.addTests(case)
runner = unittest.TextTestRunner()
runner.run(suite)

 

方法4:
用unittest.defaultTestLoader类方法
path = os.path.dirname(__file__)
"""打印当前的文件的所在目录的绝对路径"""
print(path)
""" 调用通过defaultTestLoader类中的discover方法
来查找测试用例 前面是路径,后面是文件名称"""
discover = unittest.defaultTestLoader.discover(path,'day03.py')
runner = unittest.TextTestRunner()
runner.run(discover)

 

 
 

posted @ 2021-08-13 21:52  多测师-星sir  阅读(137)  评论(0)    收藏  举报