python

python unittest

2021-08-09  本文已影响0人  小白兔胡萝卜

unittest是python自带的测试模块,其主要用于单元测试,但是有时候我们也通过构建业务逻辑的形式来做自动化测试

unittest是python自带的单元测试框架,尽管其主要是为单元测试服务的,但我们也可以用它来做自动化测试。

unittest框架有一套固有套路,可以让我们定义测试用例时更加简单和统一断言的能力。unittest框架提供了一系列的断言各种执行策略。通过test suit或者扩展的方式,我们可以自定义用例执行的策略

通过下面的简单例子认识一下吧

# coding: utf-8

# author: 

# createDate: 

# updateDate: 

import unittest

import ddt

test_data = [1,2,3]

class TestFixtures01(unittest.TestCase):

    # 所有用例执行前执行

    def setUp(self) ->None:

        print("setUp开始")

    def tearDown(self) ->None:

        print("tearDown结束")

    # 每条用例执行前执行

    @classmethod

    def setUpClass(cls) ->None:

        print("setUpClass开始")

    @classmethod

    def tearDownClass(cls) ->None:

        print("tearDownClass结束")

    # 测试用例

    def test_001(self):

        print("测试用例001")

class TestFixtures02(unittest.TestCase):

    def test_002(self):

        print("测试类2")

@ddt.ddt

class TestFixtures03(unittest.TestCase):

    @ddt.data(*test_data)

    def test_003(self, get_data):

        print("get_data =", get_data)

# 每个模块执行前执行

def setUpModule():

"""在所有测试类在调用之前会被执行一次,函数名是固定写法,会被unittest框架自动识别"""

    print('集成测试 >>>>>>>>>>>>>>开始')

def tearDownModule():

    print("集成测试 >>>>>>>>>>>>>>结束")

if __name__ =='__main__':

    unittest.main()

执行测试结果:

集成测试 >>>>>>>>>>>>>>开始

setUpClass开始

setUp开始

测试用例001

tearDown结束

tearDownClass结束

测试类2

get_data = 1

get_data = 2

get_data = 3

集成测试 >>>>>>>>>>>>>>结束

上一篇 下一篇

猜你喜欢

热点阅读