文章目录

  • 前言

  • 一、什么是DDT?

  • 二、安装ddt

  • 三、基本原理和用法

  • 总结


前言

记录ddt用法的一些小细节


一、什么是DDT?

DDT是 “Data-Driven Tests”的缩写,数据驱动测试。

既然是测试,那么就要与单元测试框架一起使用

1、运用场景

测试框架里,同一个方法,里面不同的数据,就可以不用写多个测试方法


二、安装ddt

ddt属于第三方模块,需要安装,安装方法:


方法一:在cmd命令窗口中输入:pip install ddt
方法二:pycharm中打开终端,输入:pip install ddt


三、基本原理和用法

1、原理

类似于for循环,把循环出来的数据,一个一个的填到需要使用的地方。

注意:循环出来的是一组数据,以组为单位,因此在一个列表中一组数据与另一组数据的个数是对应的。)

2、用法

(1)使用时,先在类名上,声明ddt,写法:@ddt;

(2)再在函数上,声明数据,写法:@(*数据列表名称) 例如:@(*list1);----注意这里有星号,把数据解包。

(注意:在函数的括号了传入一个任意名称的变量(类似于 for i in list:里面的i,这个i可以是任意的变量名称。)

3、思想

ddt这个思想,其实是装饰器思想的运用。

语法:

@ddt
class XX(unittest.TestCase):
   @data(*测试数据列表)    
   def test_xx(self,new_data)  # 这里的new_data相当于for循环里面的i,一个变量去接收

import unittest
from ddt import ddt, data
from see import eat

datas = [('肉', '喜欢吃肉'), ('苹果', '喜欢吃肉'), ('葡萄', '喜欢吃葡萄')]


@ddt
class Dog_eat(unittest.TestCase):
    @data(*datas)
    def test_eat(self, new_data):
        act_reslut = eat(food=new_data[0])
        exc_reslut = new_data[1]
        self.assertEqual(act_reslut, exc_reslut)

举例: 


总结

Logo

GitCode 天启AI是一款由 GitCode 团队打造的智能助手,基于先进的LLM(大语言模型)与多智能体 Agent 技术构建,致力于为用户提供高效、智能、多模态的创作与开发支持。它不仅支持自然语言对话,还具备处理文件、生成 PPT、撰写分析报告、开发 Web 应用等多项能力,真正做到“一句话,让 Al帮你完成复杂任务”。

更多推荐