#!/user/bin/python3
# -*- coding: utf-8 -*-
# @Time : 2020/6/15 0015 23:27
# @Author : lemon_小张
# @Email :981874735@qq.com
# @File :class_13作业.py
# TODO
'''1、将上节课作业当中,的测试数据写入excel当中,
2、使用excel读取出来
3、最终形式为一个列表:列表当中的每个成员是字典,每一个字典是一行测试数据。
与课堂中所转换的形式相同'''
import os
file_path = os.path.join(os.path.dirname(os.path.abspath(__file__)),"test_login_cases.xlsx")
# 1、加载excel数据文件
from openpyxl import load_workbook
wb = load_workbook(file_path)
# 2、根据表单名称选择表单:wb['表单名称']
sh = wb["test_login"]
all_datas = [] # 获取excel表格当中所有的测试数据
# 1、拿到字典的key值:
# print(list(sh.rows)[0]) # (<Cell 'login'.A1>, <Cell 'login'.B1>, <Cell 'login'.C1>)
titles = []
for item in list(sh.rows)[0]: # 遍历第1行当中每一列
titles.append(item.value)
print(titles)
for item in list(sh.rows)[1:]: # 遍历数据行
values = []
for val in item: # 获取每一行的值
values.append(val.value)
res = dict(zip(titles,values)) # title和每一行数据,打包成字典
res["check"] = eval(res["check"]) # 将check的字符串,转换为字典对象。
all_datas.append(res) # 追加到列表
print(all_datas)
user password1 password2 check
python30 123456 123456 {"code": 1, "msg": "注册成功"}
python26 123456 123456 {"code": 0, "msg": "该账户已存在"}
123456 {"code": 0, "msg": "所有参数不能为空"}
123456 {"code": 0, "msg": "所有参数不能为空"}
python27 {"code": 0, "msg": "所有参数不能为空"}
{"code": 0, "msg": "所有参数不能为空"}
python26 123456 12345 {"code": 0, "msg": "两次密码不一致"}
python29 12345 12345 {"code": 0, "msg": "账号和密码必须在6-18位之间"}
python28 abcdefghi1234567890 abcdefghi1234567890 {"code": 0, "msg": "账号和密码必须在6-18位之间"}