69 lines
2.0 KiB
Python
69 lines
2.0 KiB
Python
#!/usr/bin/env python
|
||
# -*- coding: utf-8 -*-
|
||
# @Time : 2022/6/2 22:43
|
||
# @Author : 郭林莉
|
||
|
||
|
||
#!/usr/bin/python3
|
||
|
||
import xlrd
|
||
from config.settings import ConfigHandler
|
||
from ruamel.yaml import YAML
|
||
import os
|
||
|
||
yaml = YAML()
|
||
|
||
|
||
def read_xls(filename):
|
||
|
||
# 打开Excel文件
|
||
data = xlrd.open_workbook(filename)
|
||
# 读取第一个工作表和表名
|
||
table = data.sheets()[0]
|
||
tablesheet = data.sheet_names()[0]
|
||
# 统计行数
|
||
rows = table.nrows
|
||
data = {} # 存放数据
|
||
ymal_dirmctory = ConfigHandler.data_path + f'{tablesheet}'
|
||
|
||
for v in range(1, rows):
|
||
values = table.row_values(v)
|
||
excel_yaml_path = str(values[10])
|
||
print("excel_yaml_path",excel_yaml_path)
|
||
yaml_path = ymal_dirmctory+excel_yaml_path[:-2]+'.yaml'
|
||
# print('ymal_dirmctory', ymal_dirmctory)
|
||
# print('yaml_path', yaml_path)
|
||
if not os.path.exists(ymal_dirmctory):
|
||
os.mkdir(ymal_dirmctory)
|
||
if str(values[0]) == '同上':
|
||
pass
|
||
else:
|
||
data["case_common"]=eval(values[0])
|
||
case_name = excel_yaml_path[1:]
|
||
print('名字',case_name)
|
||
yamlassert = eval(values[11])
|
||
if values[7] == '':
|
||
data[case_name]={
|
||
"host": str(values[1]),
|
||
"url": str(values[2]), # 这里我只需要字符型数据,加了str(),根据实际自己取舍
|
||
"method": str(values[3]),
|
||
"detail": str(values[4]),
|
||
"headers": eval(values[5]),
|
||
"requestType": str(values[6]),
|
||
"is_run": True,
|
||
"data": eval(values[8]),
|
||
"assert": yamlassert,
|
||
'sql': ""
|
||
}
|
||
|
||
with open(yaml_path, mode='w', encoding='utf-8') as file:
|
||
yaml.dump(data, file)
|
||
return data
|
||
|
||
|
||
|
||
dmdata = read_xls(ConfigHandler.file_path + r'\stp.xlsx')
|
||
print(dmdata)
|
||
# print(jsonpath.jsonpath(dddddd,"$..yamlpath"))
|
||
|