本帖最后由 yingziLI 于 2025-3-26 23:36 编辑
分享一个之前编写的工具,也是现在自己一直在使用的工具
实现功能
1、把xmind格式编写的测试用例转换成tapd可以识别的Excel用例;
2、可以根据实际情况调整Excel标题头,实现不同要求的导出;
核心代码
def main_convert():
""" 主函数 """
xmind_path = text_xmind_path.get("1.0", tk.END).strip()
excel_path = xmind_path.rstrip('xmind') + 'xlsx'
if not xmind_path:
status_label.delete(1.0, tk.END)
status_label.insert(tk.END, "请先选择 XMind 文件")
return
try:
datas = xa.read_xmind(xmind_path)
logger.info(f"读取XMind文件成功:{xmind_path}")
sheet_name = datas[0]
for _ in range(len(datas[1])):
data = datas[1][_]
ml = xa.extract_title_values(data)
sl = len(ml)
if sl == 1:
outer_layer_data(sl, data, ml)
elif sl > 1:
inner_layer_data(data, sl, ml)
else:
print("目录层级不存在或为空,请重新选择!")
print(f"总共生成用例:{len(cases_list)} 条")
erw.WriteExcel(sheet_name, headers, excel_path).create_write_excel(cases_list)
logger.info(f"总共生成用例:{len(cases_list)} 条\n")
status_label.delete(1.0, tk.END)
status_label.insert(tk.END, f"总共转换用例:{len(cases_list)} 条\n")
status_label.insert(tk.END, f"用例所在目录:{excel_path}")
except Exception as err:
print(f"Error: {err}")
logger.error(f"Error: {err}\n")
e = ('请确认后重试:\n'
'1.用例文件路径中不能有空格换行符。\n'
'2.检查xmind文件中不能有乱码或无法识别的字符(xmind自带表情字符除外)。\n'
'3.检查是否将已生成的Excel文件未关闭。\n'
'4.检查xmind文件书写规则和程序版本是否一致。')
status_label.delete(1.0, tk.END)
status_label.insert(tk.END, "转换失败:请检查Xmind文件书写规则是否正确!\n")
status_label.insert(tk.END, f"{e}")
finally:
cases_list.clear()
代码比较长这里就不全部粘贴了,有兴趣的可以下载源代码查看
使用说明
程序层级说明:
bin:存放运行的主程序
doc:xmind用例编写规则和示例
config:导出表格的表头字段信息,可根据实际情况自定义
logs:程序运行后的日志文件
已经打包了windows系统的exe程序,可以直接双击run.exe运行程序,其他系统请自行打包或安装python环境运行。
运行效果
启动页面
运行效果
下载地址:
https://wwkk.lanzouo.com/b00zxmsoed
密码:52pojie |