首页 > 编程语言 >python-参数化

python-参数化

时间:2022-12-16 21:34:25浏览次数:49  
标签:num1 python unittest parameterized 参数 import self

'''参数化的作用
将多个测试代码相同只是测试数据不同,预期结果不同的测试用例,通过参数化的技术合并成一个测试用例
使用方法
先安装parameterized(设置-pycharm安装插件的地方安装)
导入unittest
导入from parameterized import parameterized
在需要合并数据的测试用例上面使用
@parameterized.expand([(参数1,参数2,预期结果),(参数1,参数2,预期结果),(参数1,参数2,预期结果)])
修饰方法
注意:在expand后面的括号里面跟的是参数,所以他是一个列表
- 列表里面放多个元组, 每个元组中的成员就代表调用方法使用的实参
- 列表中有几个元组,方法就会自动被调用几次'''
import unittest
from parameterized import parameterized
def my_fun(a,b):
    return a+b
class first(unittest.TestCase):
    @parameterized.expand([(1,2,3),(2,4,8),(7,3,10)])
    def test_01(self,a,b,c):
        num1=my_fun(a,b)#num1是计算a,b相加的值,也就是实际结果
        self.assertEqual(num1,c)#使用实际结果和预期结果相比较
#也可以将参数列表直接放到外面,修饰的时候直接写列表名,这样更加直观
import unittest
from parameterized import parameterized
def my_func(a,b):
    return a+b
list1=[(1,2,3),(2,4,8),(7,3,10)]
class firsts(unittest.TestCase):
    @parameterized.expand(list1)
    def test_01(self,a,b,c):
        num1=my_fun(a,b)
        self.assertEqual(num1,c)

  







标签:num1,python,unittest,parameterized,参数,import,self
From: https://www.cnblogs.com/wh0915/p/16988321.html

相关文章

  • 深入理解 Python 的对象拷贝和内存布局
    深入理解Python的对象拷贝和内存布局前言在本篇文章当中主要给大家介绍python当中的拷贝问题,话不多说我们直接看代码,你知道下面一些程序片段的输出结果吗?a=[1,2,......
  • Python函数/动态参数/关键字参数
     1.函数#函数语法:#函数名规范:小谢字母开头,不同字母下划线隔开(字母数字下划线)#def函数名():#函数体:希望函数做的事情1.1.无参函数#无参函数defmusic():......
  • Python之Socket编程: 轻松连接你的应用程序
    前言什么是Socket?Python的Socket模块提供了一个标准的接口,可以让你使用网络连接来通信。Socket是一种网络通信技术,它提供了一个通用的接口来连接不同类型的网络,例......
  • python面向对象
    面向对象的三大特性:封装性,继承性,多态性。封装性封装隐藏了对象的属性和方法内部实现细节,仅对外提供公共访问方式,类的内部可以访问,外部不可以访问。封装格式:在变量或者方法前......
  • PYTHON 模块 - random
    1.1random模块用于生成随机数。1.2相关方法random.random()用于生成一个0到1的随机浮点数:0<=n<1.0>>>importrandom>>>random.random()0.6067277881757......
  • python 装饰器(二)
         ......
  • Python之搬家具
    一、需求将⼩于房⼦剩余⾯积的家具摆放到房⼦中二、步骤分析需求涉及两个事物:房⼦和家具,故被案例涉及两个类:房⼦类和家具类。定义类:房⼦类实例属性房⼦地理......
  • PYTHON 模块
    1.1模块模块是一个包含所有你定义的函数和变量的文件,其后缀名是.py。模块可以被别的程序引入,以使用该模块中的函数等功能。1.2导入模块import模块1,模块2,...定......
  • python模拟股票的数据分析
    股票分析需求:股票分析使用tushare包获取某股票的历史行情数据。输出该股票所有收盘比开盘上涨3%以上的日期。输出该股票所有开盘比前日收盘跌幅超过2%的日期。假如我......
  • 利用python实现typora自动上传图片
    利用python实现Typora内图像的上传缘由及目的在之前的markdown文件书写中,采用Notion软件。但是后来发现Notion的导出存在很多问题,尤其是在上传到博客园时,对于图片的处理......