Python读取Excel的表格的时候,我会选择 xlrd,xlwt,xlutils 这三个库,xlrd和xlwt这两个很简单,大家都知道这是读取和写入的,但是xlutils这个库我是用来在同一个文件操作Excel表格的时候来用的。安装方式直接pip install xlrd 等安装就可以。xlutils安装报错了,笔者也没有纠结,直接去网上下载安装包,进行安装了。殊途同归。只要你完成就好,不在乎你是怎么完成安装的,下面就是怎么运用了,啥都不用说,代码,上代码
import xlrd #导入库 from xlutils.copy import copy file_path ='beijing.xlsx' file=xlrd.open_workbook(file_path) me=file.sheets()[0] nrows = me.nrows #行数 ncols = me.ncols #列数 colnames = me.col_values(2) #某一行数据 print(me.cell(1,1).value) print(colnames) from xlutils.copy import copy #在原文进行写入必须通过这个作为媒介 w = copy(xlrd.open_workbook('beijing.xlsx')) w.get_sheet(0).write(3,4,"foowerj") w.save('beijing.xlsx')
笔者试图在用Excel表格来管理测试用例,再自动化的时候直接读写Excel用例就可以。学习每一个都可以给自己增加技能多好,
下面是笔者在接口测试的模块中使用Excel管理测试用例的时候,写的代码,这里的代码简单没有增加更多的容错机制。可以在后续的使用中加以改进。
笔者曾经听说过,有个技术面试官对面试者这么说,我们这里的测试能自动化就不手工,这句话也会告诉你我们这里有自动化,可见,公司有能力做自动化的,
笔者试着对代码进行注释。
def datacel(): filepath='C:\\Users\\Administrator\\Desktop\\jiejko\\data\\data.xlsx' #文件的路径 file=xlrd.open_workbook(filepath)#使用xlrd的open_workbook打开文件 me=file.sheets()[0] nrows=me.nrows #获取行数 listkey=[] listconeent=[] listurl=[] listfangshi=[] listqiwang=[] #定义对应的用例条件的list for i in range(1,nrows):#循环所有行数的值 listkey.append(me.cell(i,2).value) listconeent.append(me.cell(i,3).value) listurl.append(me.cell(i,4).value) listfangshi.append((me.cell(i,5).value)) listqiwang.append(int(me.cell(i,6).value)) return listkey,listconeent,listfangshi,listqiwang,listurl#结果返回
我们调用上面的函数可以给我们传递出来5个list,那么我们在接下的测试用例,可以去调用这个函数。使用里面的数据。
Excel来编写测试用例也比较简单,很多人都是在Excel中编写测试用例, 那么我们可以分工,一个人利用Excel编写自动化的测试用例,一个人去负责代码部分,这是后话