unittest框架用法

一.unittest的四大组件1.TestCase:测试用例,通过继承unittest.TestCase,来实现用例的继承,在Unittest中,测试用例都是通过test来识别的。2.TestSuite:用来组装测试用例 - addTest一个功能的验证往往需要多个测试用例3.TestRunner:运行器,通过TextTestRunner类提供的run()方法来执行test suite/test case,一般通过runner来调试unittest.main()运行所有内容。
摘要由CSDN通过智能技术生成

目录

一.unittest的四大组件

二.unittest常用类

三.unittest框架使用示范

三.TestResult

四.测试套件的用法

五.装饰器

六.参数化

七.使用HTMLTestRunner.py模块生成测试报告


一.unittest的四大组件

1.TestCase:

测试用例,通过继承unittest.TestCase,来实现用例的继承,在Unittest中,测试用例都是通过test来识别的。

2.TestSuite:

用来组装测试用例 - addTest

一个功能的验证往往需要多个测试用例

3.TestRunner:

运行器,通过TextTestRunner类提供的run()方法来执行test suite/test case,一般通过runner来调试unittest.main()运行所有内容。

4.TestFixture:

对一个测试用例环境的搭建和销毁,就是一个fixture,通过setUp()和tearDown()方法实现

二.unittest常用类

1.TestCase,测试用例的父类,测试类需要继承它才有执行测试的能力

2.TestSuite,该类用于创建测试套件,可以将多个测试用例加入一个测试套件中

3.unnitest.main()方法可以运行所有test开头的方法

4.TextTestRunner,用该类的run()方法来运行TestSuite添加好的方法

5.skip装饰器,有时在某些系统环境上运行时,某些测试用例是不能通过的,但这并不是我们的产品或用例导致,而是环境的不兼容性问题,这时可以用skip装饰器跳过这些测试用例

三.unittest框架使用示范

被测试代码是一个简单的加法代码,如图

class Function:
  def add(self,a,b):
      return a + b

测试代码如下

import unittest
from my_unittest.function import Function

class TestFunction(unittest.TestCase):
    @classmethod
    def setUpClass(cls):
        print("每个测试类执行之前调用该方法“)

    @classmethod
    def tearDownClass(cls):
        print("每个测试类执行之后调用该方法“)

    def setUp(self):#重写父类的方法setUp(),对于当前的测试用例进行一些初始化工作
        self.func = Function()
        print("每个测试用例执行之前,均会调用该方法“)

    def tearDown(self):
        self.func = none #每个测试用例执行之后调用该方法,关闭对象,释放资源
         print("每个测试用例执行之后,均会调用该方法“)

    def test_1(self):
        result= self.func.ad
  • 1
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值