Docker - 基于 xmind2testcase 搭建测试用例转换服务
需求:部门使用禅道管理测试用例,但是由于迭代时间紧迫,大部分小伙伴都习惯使用 xmind 编写测试用例,后续再向禅道迁移。
为解决这一痛点,在网上找到 xmind 转 csv 的 python 库,本文记录该服务搭建过程。
本文记录该服务搭建过程,需要用到的工具如下:
- xmind2testcase:基于该 python 库,定制化一些转换规则
- docker:容器化部署服务,可以 web 页面操作转换
- gitlab:项目源码管理、webhook
fork 项目源码
项目地址:https://github.com/zhuifengshen/xmind2testcase
基于公司用例编写习惯,改改代码;项目非常贴心的提供了 flask 前端访问页面,直接通过命令启动:
$ python webtool/application.py
测试没问题的话,就把项目扔到 gitlab 上
编写 Dockerfile
打成镜像,方便服务部署
FROM python:3.10-alpine
# 将当前目录中的所有文件复制到容器的 /app 目录中
COPY . /app
# 在容器中设置工作目录为 /app
WORKDIR /app
# 安装依赖项
RUN pip install -r requirements.txt -i http://pypi.douban.com/simple/ --trusted-host pypi.douban.com
# 启动服务
EXPOSE 8000
CMD ["python", "webtool/application.py"]
Jenkins 上创建项目
- 创建一个自由风格的项目
- 配置项目源码地址
- 编写项目构建 shell 命令
NAME=xmind2testcase
docker build -t $NAME:latest .
if docker ps -aqf name=$NAME | grep -q .; then
docker rm -f $NAME
fi
docker run --name $NAME -d -p 8000:8000 -v /volume/$NAME/webtool/uploads:/app/webtool/uploads $NAME
进行构建,访问 8000 端口,即可。