unittest框架

组织多个用例、断言方法、测试报告
核心要素:
TestCase:unittest的组成部分用来书写用例代码
TestSuite:打包TestCase,可以将多个脚本文件组装在义气
TestRunner:用例执行
TestLoader:是TestSuite的补充,是用例组装TestCase的
Fixture:测试夹具,代码结构,即用例执行顺序 前–>用例–>后置

1、TestCase的使用

import unittest

class TestDemo(unittest.TestCase):


    def test_method1(self):
        print("测试方法1")

    def test_method2(self):
        print("测试方法2")

if __name__ == "__main__":
    unittest.main()

运行截图
在这里插入图片描述

2、TestSuite使用

import unittest
from dy01_TestDemo1 import TestDemo1
from dy01_TestDemo2 import TestDemo2

suite = unittest.TestSuite()

suite.addTest(TestDemo1('test_method1'))
suite.addTest(TestDemo1('test_method2'))
suite.addTest(TestDemo2('test_method1'))
suite.addTest(TestDemo2('test_method2'))

runner = unittest.TextTestRunner()
runner.run(suite)

更简单的导入

import unittest
from dy01_TestDemo1 import TestDemo1
from dy01_TestDemo2 import TestDemo2

suite = unittest.TestSuite()

suite.addTest(unittest.makeSuite(TestDemo1))
suite.addTest(unittest.makeSuite(TestDemo2))

runner = unittest.TextTestRunner()
runner.run(suite)

运行截图
在这里插入图片描述
查看执行结果
运行结果的每个点都代表通过(.用例通过、F用例不通过、E用例代码错误)

3、TestLoader测试加载

与TestSuite作用一样 :只是代码结构不一样


import unittest

suite = unittest.TestLoader().discover('./','dy01_TestDemo*.py')

runner = unittest.TextTestRunner()
runner.run(suite)

运行截图

在这里插入图片描述

Fixture

方法级别Fixture,方法名是固定的
每个用例执行前后都会自动带调用
类别级FIxture(只有一次在头和尾)
模块级FIxture(在class类外)

文件名Fiture

import unittest

class TestLogin(unittest.TestCase):
    def setUp(self):    # 方法级别Fixture每个测试用例都会执行一次(在头部)
        print('2.打开')

    def tearDown(self): # 方法级别Fixture每个测试用例都会执行一次(在尾部)
        print('4.关闭')

    @classmethod    # 类别级FIxture(只有一次在头)
    def setUpClass(cls):
        print('1.浏览器')

    @classmethod    # 类别级FIxture(只有一次在尾)
    def tearDownClass(cls):
        print('5.完成关闭')

    def test_Login1(self):
        print('3.测试')

    def test_Login2(self):
        print('3.测试')

    def test_Login3(self):
        print('3.测试')

文件名FT_TSloader

import unittest

suite = unittest.TestLoader().discover('./','FIxture*.py')

runner = unittest.TextTestRunner()
runner.run(suite)

运行结果
在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值