【测试效率提升技巧】xmind测试用例转换为excel工具使用手册

xmind测试用例转换为excel工具使用手册

      • 一、前置环境配置
      • 二、执行
      • 三、xmind书写模板和规则
      • 四、测试用例管理工具——禅道
      • 五、xmind2testcase加装生成excel文件功能
      • 六、定制化测试用例一键加工脚本使用规范(生成excel格式的测试用例)
      • 七、xmind写测试用例导入禅道流程

一、前置环境配置

1.在命令行执行pip install xmind2testcase -U
2.到python中xmind2testcase的安装路径(我的路径是D:\python\Lib\site-packages\xmind2testcase)下新建一个文件夹,命名为web
3.在命令行cd到刚刚创建的web文件夹,执行pip freeze > requirements.txt
4.命令行执行pip install -r requirements.txt -U

PS:请尽量使用xMind8 Update9版本编写测试用例,否则可能出现无法转换的情况

二、执行

5.运行python安装目录下的application.py文件(我的文件位置在D:\python\Lib\site-packages\webtool\application.py)
6.命令行会显示本地生成的网页网址,直接复制到浏览器进入即可
【测试效率提升技巧】xmind测试用例转换为excel工具使用手册_第1张图片
实现效果如下:
【测试效率提升技巧】xmind测试用例转换为excel工具使用手册_第2张图片

三、xmind书写模板和规则

这里是标准的xmind转换库所要求的xming用例格式
【测试效率提升技巧】xmind测试用例转换为excel工具使用手册_第3张图片
【测试效率提升技巧】xmind测试用例转换为excel工具使用手册_第4张图片

四、测试用例管理工具——禅道

一.安装
具体安装步骤可见:禅道安装教程

二.xmind2testcase转换库针对禅道代码改良
默认下xmind2testcase转换的csv文件导入禅道时,不会添加用例类型和测试阶段。这里通过修改代码的方式使其导入时具有默认值,免去了导入后还要手动填写的麻烦。

找到 parser.py
在 config = { 中添加

    #用例类型的配置
    'type_sep': '\n----\n',

在 def parse_a_testcase(case_dict, parent): 中

    #修改
    #testcase.summary = summary if summary else testcase.name
    #改为
    #设置批注默认值为'无'
    testcase.summary = summary if summary else "无"
    #添加
    #用例类型赋值,默认为'无'
    execution_type = gen_testcase_type(topics)
    testcase.execution_type = execution_type if execution_type else '无'
#代码底部添加方法
#从xmind的内容中获取用例类型的值
def gen_testcase_type(topics):
    labels = [topic['label'] for topic in topics]
    labels = filter_empty_or_ignore_element(labels)
    return config['type_sep'].join(labels)

找到 zentao.py

    #修改
    #case_apply_phase = '迭代测试'
    #改为
    #测试阶段的csv输出
    case_apply_phase = gen_case_apply_phase(testcase_dict['summary'])
#修改方法
#def gen_case_type(case_type):
#    mapping = {1: '手动', 2: '自动'}
#    if case_type in mapping.keys():
#        return mapping[case_type]
#    else:
#        return '手动'
#改为
#测试类型默认值转换
def gen_case_type(case_type):
    if case_type=='无':
        return '功能测试'
    else:
        return case_type
#添加方法
#测试阶段默认值转换
def gen_case_apply_phase(case_apply_phase):
    if case_apply_phase=='无':
        return '功能测试阶段'
    else:
        return case_apply_phase

三.使用(仅限本地自己管理用例,主要与xmind转换得到的csv文件结合使用)

1.进入禅道页面,选择产品——添加产品,填写产品名称和代号,保存。
2.点击测试——维护模块,添加测试模块
【测试效率提升技巧】xmind测试用例转换为excel工具使用手册_第5张图片

3.进入测试用例页面,点击导出模板,在导出文件中查看禅道给各个模块分配的序号(前提是每个模块内必须至少有一条用例)
【测试效率提升技巧】xmind测试用例转换为excel工具使用手册_第6张图片

【测试效率提升技巧】xmind测试用例转换为excel工具使用手册_第7张图片
4.给xmind编写的测试用例里的模块加上序号标注(如果是直接使用excel写测试用例导入同理,在所属模块中添加序号标注)
【测试效率提升技巧】xmind测试用例转换为excel工具使用手册_第8张图片
5.点击测试——用例——导入,选择导入csv
【测试效率提升技巧】xmind测试用例转换为excel工具使用手册_第9张图片
再点击保存

7.导入成功
【测试效率提升技巧】xmind测试用例转换为excel工具使用手册_第10张图片

五、xmind2testcase加装生成excel文件功能

1.前往site-packages中的xmind2testcase中的zentao.py文件,增加xmind_to_zentao_xlsx_file_by_pandas函数
【测试效率提升技巧】xmind测试用例转换为excel工具使用手册_第11张图片

import pandas as pd    #使用pandas包来写入excel的,需要引入
def xmind_to_zentao_xlsx_file_by_pandas(xmind_file): #xmind导出禅道用例模板的xlsx格式
    """Convert XMind file to a zentao xlsx file"""
    xmind_file = get_absolute_path(xmind_file)
    logging.info('Start converting XMind file(%s) to zentao file...', xmind_file)
    testcases = get_xmind_testcase_list(xmind_file)

    fileheader = ["所属模块", "用例标题", "前置条件", "步骤", "预期", "关键词", "优先级", "用例类型", "适用阶段"]
    zentao_testcase_rows = []
    for testcase in testcases:
        row = gen_a_testcase_row(testcase)
        zentao_testcase_rows.append(row)

    zentao_file = xmind_file[:-6] + '.xlsx'
    df = pd.DataFrame(data=zentao_testcase_rows, columns=fileheader) #构造数据
    df.to_excel(zentao_file, index=False)  #写入文件,设置不需要索引
    logging.info('Convert XMind file(%s) to a zentao csv file(%s) successfully!', xmind_file, zentao_file)
    return zentao_file

2.前往python安装目录下(我的位置为D:\python\Lib\site-packages\webtool)的application.py中,添加路由

@app.route('//to/zentao_xlsx')
def download_zentao_xlsx_file(filename):
    full_path = join(app.config['UPLOAD_FOLDER'], filename)
    if not exists(full_path):                                                             
        abort(404)
    zentao_xlsx_file = xmind_to_zentao_xlsx_file_by_pandas(full_path)
    filename = os.path.basename(zentao_xlsx_file) if zentao_xlsx_file else abort(404)
    return send_from_directory(app.config['UPLOAD_FOLDER'], filename, as_attachment=True)

再将zentao.py的xmind_to_zentao_xlsx_file_by_pandas函数导入进来
在这里插入图片描述

3.前往前往python安装目录下(我的位置为D:\python\Lib\site-packages\webtool\templates)的index.html中添加xlsx的访问路径

<a href="{{ url_for('download_zentao_xlsx_file',filename=record[1]) }}">xlsx</a> |

【测试效率提升技巧】xmind测试用例转换为excel工具使用手册_第12张图片
4.在同级目录的preview.html中添加xlsx的访问路径

/ <a href="{{ url_for('download_zentao_xlsx_file',filename= name) }}">Get Zentao xlsx</a>

【测试效率提升技巧】xmind测试用例转换为excel工具使用手册_第13张图片
5.至此,xmind2testcase改装完毕,再次运行application.py(D:\python\Lib\site-packages\webtool\application.py)即可查看效果

六、定制化测试用例一键加工脚本使用规范(生成excel格式的测试用例)

1.用xmind写好测试用例
2.启动xmind转换网页,将xmind文件转换为excel文件
3.新建空文件夹,将得到的excel文件与加工脚本(原生转换的excel格式不太好看,也不太符合业务要求,我自己编写了一个小脚本规范一下excel格式)放入
4.双击运行脚本
5.excel文件加工完成,取出excel文件
6.以后再想加工excel文件,直接将文件放入此文件夹,重复上述两步即可

七、xmind写测试用例导入禅道流程

1.用xmind写好测试用例
2.启动xmind转换网页,将xmind文件转换为csv文件
3.将csv文件导入禅道

你可能感兴趣的:(笔记,面试,测试工程师,http)