Python+openpyxl读取测试数据,通过Excel管理我们的测试⽤例数据⼀、⾸先安装openpyxl。
pip install openpyxl
⼆、⾸先我们新建⼀个Excel⽂件,写⼊内容。
三、读取测试⽤例数据(注意:在使⽤openpyxl操作Excel⽂件时,⼀定要关闭Excel⽂件哦,否则会报错!)
import openpyxl
class ReadExcel():
def __init__(self, file_name, sheet_name):
"""
初始化ReadExcel该⽅法
:param file_name: Excel⽂件名
:param sheet_name: 指定读取的sheet页
"""
self.file_name = file_name
self.sheet_name = sheet_name
def open_excel(self):
"""打开指定的Excel⽂件中的Sheet页"""
# 通过.load_workbook⽅法加载Excel⽂件
self.wb = openpyxl.load_workbook(filename=self.file_name)
# 然后打开指定的sheet页
self.sh = self.wb['data']
def read_excel(self):
"""
定义读取Excel指定表单内容数据的⽅法
:return:
"""
self.open_excel()  # ⾸先打开Excel中的sheet页
cases = []  # 新建⼀个空列表,⽤于存放读取出的数据
titles = []  # 新建⼀个空列表,⽤于存放读取到的表头,也就是1,2,3,4,5这⼀⾏
# 新建以上这两个空列表呢,为了⽅便我们把每⼀⾏测试数据与表头进⾏打包
rows = list(ws)  # 这⾥是将指定的sheet页中所有存在数据的⾏全都读取出来,转换成列表类型存放,⽅便我们进⾏遍历
# 这⾥是要将表头(1,2,3,4,5这些),通过遍历的⽅式,提取出来,存放到空列表
for row in rows[0]:
titles.append(row.value)  # 将每⼀个表格的value值,也就是我们需要的数据,添加的空列表中。
# 这⾥是遍历除了表头⼀⾏,剩下的所有⾏
for row in rows[1:]:
data = []
for r in row:  # 遍历每⼀⾏的每⼀个表格
data.append(r.value)
data_zip = dict(zip(titles, data))  # 然后将每⼀⾏读取到的测试数据,和表头进⾏打包成⼀个字典的形式存放。            cases.append(data_zip)  # 将所有测试数据添加到⼀个空列表中
return cases
if __name__ == '__main__':
cases = ReadExcel(file_name='cases.xlsx',sheet_name='data').read_excel()
# 获取到所有的测试数据
# 遍历出每⼀条测试数据python怎么读取excel文件数据
for i in cases:
print(i['⽤例编号']) # 打印出每⼀条测试数据,表头是⽤例编号的数据
运⾏结果:
四、写⼊测试结果
import openpyxl
class ReadExcel():
def __init__(self, file_name, sheet_name):
"""
初始化ReadExcel该⽅法
:param file_name: Excel⽂件名
:param sheet_name: 指定读取的sheet页
"""
self.file_name = file_name
self.sheet_name = sheet_name
def open_excel(self):
"""打开指定的Excel⽂件中的Sheet页"""
# 通过.load_workbook⽅法加载Excel⽂件
self.wb = openpyxl.load_workbook(filename=self.file_name)
# 然后打开指定的sheet页
self.sh = self.wb['data']
def write_excel(self, row, column, value):
"""
定义⼀个写⼊数据的⽅法
:
param row: 指定写⼊的⾏
:param column: 指定写⼊的列
:param value: 指定写⼊的数据
:return:
"""
# 第⼀步:打开
self.open_excel()
# 第⼆步:写⼊
ll(row=row, column=column, value=value)
# 第三步:保存
self.wb.save(self.file_name)
if __name__ == '__main__':
ReadExcel(file_name=r'cases.xlsx',sheet_name='data').write_excel(row=2, column=13, value="测试通过")
运⾏结果:

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。