背景说明: 1、为了防止三天打鱼两天晒网式学习 2、每日更新1-2个小知识点或者案例 3、只看和跟着做的理解程度是不一样的 4、建议一起打卡练习 5、互相督促打卡 + v:yifuqiang2021
skip装饰器 测试套件与运行器
通过@unittest.skip进行调用 @unittest.skip:无条件跳过该用例执行 @unittest.skipif:当if条件为真时,跳过 @unittest.skipUnless:与skipif相反,当条件为假的时候,跳过 @unittest.expectedFailure:当用例报错时,系统选择忽略
# 导包import unittest# 继承unittest.TestCaseclass UnitDemo(unittest.TestCase):@unittest.skip('这是一个skip装饰器')def test_1(self):print('test_1')@unittest.skipIf(1==1,'条件成立时跳过')def test_2(self):print('test_2')@unittest.skipUnless(1==2,'条件不成立时跳过')def test_3(self):print('test_3')@unittest.expectedFailuredef test_4(self):a = 1/0print(a)def test_5(self):print('test_5')# 运行测试用例if __name__ == '__main__':unittest.main()‘

场景:
冒烟测试用例 主流程测试用例 说明: 套件的运行需要通过运行器来进行运行操作,默认运行器是TextTestRunner 运行套件时,用例的顺序是基于套件在添加用例时的顺序来定的 用法: 创建套件 添加用例到套件 单个添加:通过用例的名称进行添加 批量添加: 通过用例集合来进行添加 通过TestCase对象直接添加一整个UnitTest类 通过类名来进行添加 通过文件名来进行添加 运行套件
import unittestfrom unit_demo import UnitDemo#创建套件suite = unittest.TestSuite()# 添加用例到套件中:添加单个测试用例:通过用例的名称进行添加suite.addTest(UnitDemo('test_5'))suite.addTest(UnitDemo('test_2'))suite.addTest(UnitDemo('test_3'))# 运行套件runner = unittest.TextTestRunner()runner.run(suite)

import unittestfrom unit_demo import UnitDemo#创建套件suite = unittest.TestSuite()# 2.批量添加用例到套件:一次性添加多个测试用例,通过用例集合来进行添加cases = [UnitDemo('test_3'), UnitDemo('test_5'), UnitDemo('test_1')]suite.addTests(cases)# 运行套件runner = unittest.TextTestRunner()runner.run(suite)

import unittestfrom unit_demo import UnitDemo#创建套件suite = unittest.TestSuite()# 3.批量添加测试用例:通过TestCase对象直接添加一整个UnitTest类suite.addTests(unittest.TestLoader().loadTestsFromTestCase(UnitDemo))# 运行套件runner = unittest.TextTestRunner()runner.run(suite)

import unittestfrom unit_demo import UnitDemo#创建套件suite = unittest.TestSuite()# 4. 批量添加:通过类名来进行添加suite.addTests(unittest.TestLoader().loadTestsFromName('unit_demo.UnitDemo'))# 运行套件runner = unittest.TextTestRunner()runner.run(suite)

import unittest#创建套件suite = unittest.TestSuite()# 5. 批量添加:通过文件名来进行添加# 定义获取用例的路径case_dir = './'# 基于路径来用例,组合成套件,找u开头.py结尾的文件discover = unittest.defaultTestLoader.discover(start_dir=case_dir, pattern='u*.py')# 运行套件runner = unittest.TextTestRunner()runner.run(discover)

skip装饰器 通过@unittest.skip进行调用 @unittest.skip:无条件跳过该用例执行 @unittest.skipif:当if条件为真时,跳过 @unittest.skipUnless:与skipif相反,当条件为假的时候,跳过 @unittest.expectedFailure:当用例报错时,系统选择忽略 测试套件与运行器 创建套件 suite = unittest.TestSuite() 添加用例到套件 单个添加:通过用例的名称进行添加 suite.addTest(类名('test开头的函数名1')) 批量添加: 通过用例集合来进行添加 cases = [类名('test开头的函数名1'),类名('test开头的函数名2'),类名('test开头的函数名3')] 通过TestCase对象直接添加一整个UnitTest类 suite.addTests(unittest.TestLoader().loadTestsFromTestCase(类名)) 通过类名来进行添加 suite.addTests(unittest.TestLoader().loadTestsFromName('文件名.类名')) 通过文件名来进行添加 获取路径 找到指定文件,组合成测试用例的套件来执行 discover = unittest.defaultTestLoader.discover(start_dir=目录地址, pattern='文件名') 运行套件 runner = unittest.TextTestRunner() runner.run(套件名)
文章转载自走向易富强之路,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。




