【Python】将xmind写的测试用例转成禅道可导入的excel格式

本文介绍了一个将Xmind文件转换为Excel的Python脚本,该脚本利用xmindparser库读取Xmind内容,并通过pandas库保存到Excel。在读取过程中,脚本要求每个主题必须标记优先级,否则会抛出异常。内容处理阶段,脚本会根据人为标记的节点标题和优先级进行数据整理,最终将处理后的数据保存到Excel中,适用于系统测试阶段的数据记录和管理。
xmind转excel的过程

(1)、读取xmind中的内容,使用xmindparser第三方库实现xmind内容的读取
(2)、将内容进行处理后保存至excel中,而本次使用的是pandas库将内容存储到excel中。

脚本中使用到的第三方库

在这里插入图片描述

脚本适用的xmind格式

在这里插入图片描述

读取xmind中的内容

读取xmind中的内容并将内容按行的形式保存至列表中,其中要求xmind中必须要标记优先级,否则将会抛出自定义异常。如下

class ReadXmind:
    def __init__(self) -> None:
        self.__path = None
        self.__title_list = []

    def __read_xmind(self) -> list:
        """读取xmind文件内容

        Returns: 列表

        """
        return xmind_to_dict(self.__path)

    def __get_content(self, topics: list, titles: list) -> None:
        """获取每个分支主题中的标题内容并保存至主主题标题文本列表中

        Args:
            topics: 所有分支主题,格式:list
            titles: 主主题中的标题文本,格式:list

        Returns: None

        """
        for topic in topics:
            tmp_title = copy.deepcopy(titles)  # 将titles列表复制成一个临时变量中
            if "topics" in topic:   # 如果该分支主题存在子分支主题
                tmp_title.append(topic["title"])   # 将该分支主题标题添加至列表临时变量中
                self.__get_content(topic["topics"], tmp_title)  # 回调该函数,获取该分支主题下其他分支主题内容
            else:  # 如果该分支主题不存在子分支主题
                tmp_title.append(topic["title"])  # 将该分支主题标题添加至列表临时变量中
                if "makers" in topic:   # 该分支主题存在标记
                    # 过滤出优先级标记 , 并取出优先级的值
                    priority = ''.join(list(filter(lambda x: <
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值