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编写自动化的测试用例,一个人去负责代码部分,这是后话