博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Python ddt+xlrd的使用
阅读量:5148 次
发布时间:2019-06-13

本文共 1723 字,大约阅读时间需要 5 分钟。

做了个数据驱动ddt和表格结合使用的练习,如下:

1、表格的后缀为.xls,表格中数值的类型必须是文本型,否则打印出来的数值后面多了.0,即1.0

 

2、读取表格代码:

1 import xlrd 2  3 def readxls(): 4     xl=xlrd.open_workbook('testdata.xls')  #打开Excel表格 5     sheet1 = xl.sheet_by_name('Sheet1')  #指定表1 6     listdata= []     #定义空列表,用来存放读取出来的每行数据 7     for i in range(1, 5):  #循环1~5(不包含5),即循环4次 8         j = sheet1.row_values(i, 0, 2)  #读取第i行的第0~2列(不含第2列) 9         listdata.append(j) #读一行追加一行存入listdata中10     # print(listdata)11     return listdata  #返回列表

 

3、将从表格读出来的数据与ddt结合使用,代码:

方法一:

1 from ddt import ddt,data,unpack 2 import unittest 3 from readexcel import readxls 4  5 datatest=readxls() 6 @ddt 7 class BiJiao(unittest.TestCase): 8  9     @data(*datatest)    #分离数据10     def test_bijiao(self,data):11         a,b=data  #将列表的值赋值给a,b12         print('a取值={0},b取值={1},两者相加={2}'.format(int(a),int(b),int(a)+int(b)))13 14 if __name__=='__main__':15     unittest.main()

方法二:

1 from ddt import ddt,data,unpack 2 import unittest 3 from readexcel import readxls 4  5 datatest=readxls() 6 @ddt 7 class BiJiao(unittest.TestCase): 8     @data(*datatest)    #分离数据 9     @unpack10     def test_bijiao(self,a,b):11         print('a取值={0},b取值={1},两者相加={2}'.format(int(a),int(b),int(a)+int(b)))12 13 if __name__=='__main__':14     unittest.main()

方法三:

1 from ddt import ddt,data,unpack 2 import unittest 3 from readexcel import readxls 4  5 datatest=readxls() 6 @ddt 7 class BiJiao(unittest.TestCase): 8     @data(*datatest)    #分离数据 9     @unpack10     def test_bijiao(self,*data):11         a,b=data  #将列表的值赋值给a,b12         print('a取值={0},b取值={1},两者相加={2}'.format(int(a),int(b),int(a)+int(b)))13 14 if __name__=='__main__':15     unittest.main()

 

4、打印结果

 

 

转载于:https://www.cnblogs.com/mumunansheng/p/10309630.html

你可能感兴趣的文章
微信小程序图片上传
查看>>
【更新】智能手机批量添加联系人
查看>>
NYOJ-128前缀式计算
查看>>
centos6.7 配置外网端口映射
查看>>
淡定,啊。数据唯一性
查看>>
深入理解 JavaScript 事件循环(一)— event loop
查看>>
Hive(7)-基本查询语句
查看>>
Redis快速入门
查看>>
注意java的对象引用
查看>>
C++ 面向对象 类成员函数this指针
查看>>
inline函数的总结
查看>>
【Jquery】$.Deferred 对象
查看>>
Python字符编码
查看>>
leetcode 49. 字母异位词分组(Group Anagrams)
查看>>
NSPredicate的使用,超级强大
查看>>
自动分割mp3等音频视频文件的脚本
查看>>
财务结算的目的和一般流程
查看>>
判断字符串是否为空的注意事项
查看>>
布兰诗歌
查看>>
老李分享:5个衡量软件质量的标准
查看>>