python读取Excel的方法

github不太会用,先拿博客记录一下。

结构:


Utils 文件夹下

ReadExcelCase.py

# -*- coding:utf-8 -*-
import xlrd
# 从excel文件中读取测试用例
class ReadExcelCase(object):
    def ReadExcelCase(self,ExcelName,sheetNme):
        cls = []
        ExcelName = xlrd.open_workbook('../DataPool/{}'.format(ExcelName))
        sheet = ExcelName.sheet_by_name(sheetNme)
        nrows = sheet.nrows
        for i in range(nrows):
            if sheet.row_values(i)[0] != u'case_name':
                #不读取case_name的那一行
                cls.append(sheet.row_values(i))
        return cls


ReadExcelData.py

import xlrd
class ReadExcelData(object):
    def returnExcelData(self,ExcelName,sheetNme,x,y):
        ExcelName=xlrd.open_workbook('../DataPool/{}'.format(ExcelName))
        Excelsheet=ExcelName.sheet_by_name(sheetNme)
        TestData=Excelsheet.cell(x,y).value
        return TestData

接下来是方法的调用:

test1

# -*- coding:utf-8 -*-
#作者:陈帅
#实现功能:读取Excel 形成list
from Utils.ReadExcelCase import ReadExcelCase

localrank_xls =ReadExcelCase().ReadExcelCase("heartBeat.xlsx","student")
print(localrank_xls)
print('第一行第一列元素:{}'.format(localrank_xls[0][0]))


localrank_xls=",".join('%s' %id for id in localrank_xls)
print(localrank_xls)

test2

# -*- coding:utf-8 -*-
#作者:陈帅
#实现功能:利用@paramunittest.parametrized读取Excel 形成list
import unittest
import paramunittest
from Utils.ReadExcelCase import ReadExcelCase
localrank_xls =ReadExcelCase().ReadExcelCase("heart.xlsx","live")
@paramunittest.parametrized(*localrank_xls)
class test2(paramunittest.ParametrizedTestCase):
    def setParameters(self, case_name, protocol, method):
        #一定要一一对应
        self.case_name=case_name
        self.prococol=int(protocol)
        self.method=int(method)
    def testcheck(self):
        self.assertEqual(self.prococol,self.method)
if __name__ == "__main__":
    unittest.main(verbosity=2)

test3

# -*- coding:utf-8 -*-
#作者:陈帅
#实现功能:以坐标的形式读取Excel
from Utils.ReadExcelData import ReadExcelData
print('第二行第一列:{}'.format(ReadExcelData().returnExcelData('heart.xlsx','live',1,0))

最后是数据Excel

heart.xls



heartBeat.xls


猜你喜欢

转载自blog.csdn.net/qq_39208536/article/details/80810240