zoukankan      html  css  js  c++  java
  • Python ddt+xlrd的使用

    做了个数据驱动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,b
    12         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     @unpack
    10     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     @unpack
    10     def test_bijiao(self,*data):
    11         a,b=data  #将列表的值赋值给a,b
    12         print('a取值={0},b取值={1},两者相加={2}'.format(int(a),int(b),int(a)+int(b)))
    13 
    14 if __name__=='__main__':
    15     unittest.main()

    4、打印结果

  • 相关阅读:
    零基础学python-2.7 列表与元组
    什么是App加壳,以及App加壳的利与弊
    Linux tar包安装Nginx
    GT背靠背onsite
    编程算法
    DELPHI动态创建窗体
    扩展名为DBF的是什么文件啊?
    异构数据库之间完全可以用SQL语句导数据
    XP局域网访问无权限、不能互相访问问题的完整解决方案
    Delphi 之 菜单组件(TMainMenu)
  • 原文地址:https://www.cnblogs.com/mumunansheng/p/10309630.html
Copyright © 2011-2022 走看看