python数据驱动读取用例_python数据驱动ddt 动态的用例名称(文档字符串)

做数据驱动的自动化测试时,用例名称描述在BeautifulReport等报告模板中始终是一样,无法一目了然的在测试报告中看到测试内容。因此需要修改ddt的用例描述,最好和excel中测试数据的描述保持一致,有两个方法解决这个问题:

方法一:修改ddt

如下图所示,注释掉原先的test_data_docstring = _get_test_data_docstring(func, v) ,改成自己的测试数据格式就行

a3ce25b71178

image.png

方法二:分解测试数据直接出入用例名称

相对方法一中的修改原始模块,个人更推荐以下方法

import unittest,ddt

datalist = [{'caseNum': 'case001', 'caseName': '企业报告 —— 基本信息'},{'caseNum': 'case002', 'caseName': '企业报告 —— 专利'}]

@ddt.ddt

class Datalaw(unittest.TestCase):

'''接口数据测试'''

@classmethod

def setUpClass(cls):

pass

@classmethod

def tearDownClass(cls):

pass

@ddt.data(*datalist)

def test_search2(self, data):

'''测试用例:{0}'''

print("测试数据:%s"%data)

如下图所示,会在报告的用例描述中显示测试数据。

a3ce25b71178

image.png

但这样也存在一个问题,如果测试数据过长,最终的测试报告会存在排版问题,这不是想要的最终结果,如果只显示测试数据中的用例描述(caseName)则完美,不废话直接上代码:

@ddt.data(*datalist)

@ddt.unpack #分解测试数据

def test_search2(self, caseNum,caseName):

'''测试用例:{caseName}'''

print("测试数据:%s"%caseNum)

print("测试数据:%s"%caseName)

效果图,这样测试报告则会清晰很多:

a3ce25b71178

image.png

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值