首页技术文章正文

基于Excel管理接口用例驱动测试【软件测试培训】

更新时间:2020-07-13 来源:黑马程序员 浏览量:

一、openpyxl库

1.1 说明

openpyxl是读写Excel的python库,是一个比较综合的工具,能够同时读取和修改Excel文档。
注意:这里只能是xlsx类型的excel.

1.2 安装

pip install openpyxl

1.3 步骤

·打开excel表

·获取sheet表单

·获取行、列、单元格

1.4 api方法

打开excel表:

import openpyxl
workbook=openpyxl.load_workbook('test01.xlsx')

获取sheet表单

# 1.获取表单对象
sheet=workbook['登录']


获取行、列、单元格

# 获取第一行的值
row_data = [item.value for item in list(worksheet.rows)[2]]
# 最大行
max_row=sheet.max_row
# 最大列数
max_cow = sheet.max_column
# 单元格
data=sheet.cell(3,2).value  # 表单对象.cell(行、列) 从1开始计数


写入方法

# 指定单元格写入值
sheet.cell(2, 13).value = "哇~用例数据读取完成!"  # 表单对象.cell(行,列)
# 保存修改
workbook.save(filename=data_file)  # 必须保存可以含路径 ../data/xxx.xlsx


难点

如何将Excel读取数据格式转为字典?
1. 使用eval(data)  如:eval(sheet.cell(2,13).value)

api示例:

import openpyxl
import json

filename = 'iHRM-接口测试用例.xlsx'


file_path = "../data/" + filename

# 1. 打开excel -> 获取excel表对象
workbook = openpyxl.load_workbook(file_path)

# 获取所有的表单名称
print("names:", workbook.sheetnames)

# 2. 获取sheet
sheet = workbook['登录']

# 3. 获取单元格值 2,13
data = sheet.cell(2, 13).value
print("2-13:", data)

# 4. 总行数
rows = sheet.max_row
print("最大行:", rows)

# 5. 总列数
cols = sheet.max_column
print("最大列数:", cols)

# 6. 获取第一行数据
one_data = [i.value for i in list(sheet.rows)[1]]
print("第一行数据为:", one_data)

# 7. 获取headers
headers = one_data[6]
# 字符类型
print("headers:", headers, type(headers))
# 转为字典类型
print("headers:", eval(headers), type(eval(headers)))
print("headers:", json.loads(headers), type(json.loads(headers)))

猜你喜欢

软件测试培训课程4.0版 

FDDI是什么? 

如何进行性能测试?完整的性能测试流程 

项目上线后出现bug该怎么解决? 



在线咨询 我要报名
和我们在线交谈!