回顾: 你据说过思惟导图吗?
本文咱们将使用xmind设计测试案例,并导入到TestCase管理系统TestLink。python
Xmind生成的思惟导图以 .xmind 为扩展名,其实这本质上是一个zip压缩文件。这里略带一点小知识。git
zip这一世界通用压缩标准是美国20世纪80年代著名程序员Phil Katz 发明的。当时为了对抗商业压缩软件ARC(缺钱买不起),Philip Katz 制做出了PKZIP,由于免费并且开放,愈来愈多的软件都内嵌支持zip,包括Windows操做系统。你可使用任何一种文本编辑器打开zip文件,文件的头两个字母为 PK。程序员
xmind解压之后,里面主要由一些xml文件构成,解析content.xml 和 comment.xml 就能够得到思惟导图的结构和主要文字内容。github
这是一个我使用Python实现对xmind进行解析的PyPI包,有了它你能够很方便地将xmind转化成其余系统使用的格式,好比TestLink。web
使用pip能够快速安装xmind2testlink。编程
pip install xmind2testlink -U
安装后默认就提供了命令行转换功能,能够将xmind转成能够导入testlink的xml文件。浏览器
xmind2testlink /path/to/testcase.xmind Generated: testcase.xml
若是你想本身编程使用中间对象,能够导入xmind_parser或者testlink_parser中的方法。服务器
from xmind2testlink.xmind_parser import * from xmind2testlink.testlink_parser import * # do your stuff
并非全部的xmind均可以顺利被xmind2testlink识别,由于我是按照必定规律去分析xmind结构的,因此若是你要使用这个小工具,那么请你遵循一些简单的游戏规则。app
输出结果:编辑器
如图,你的xmind应该和上图结构一致:
!
来注释掉不想导入的任意分支。若是以为太复杂了,能够下载示例的xmind文件(Test case by xmind v1.xmind),看一眼就懂了。
在使用V1的规则一段时间后,发现不是特别xmind,xmind真正强大的地方在于发散思惟整理,若是按照前面的规则使用xmind,会有很大的限制,因而我升级了xmind2testlink,称之为V2。看图:
输出结果:
基于V1,补充的规则以下:
!
开头的全部主题都会被自动忽略,能够用来隐藏或者注释某些不想导入的内容。照旧,这里有一个示例文件(Test case by xmind v2.xmind),看一下就明白了。其实Github上的英文文档描述更清楚一下,有能力的你仍是去看一下。
可能不是每一个人都了解Python或者安装了Python,那么这是你能够将xmind2testlink部署成一个网站,步骤也很是简单。
# clone this git repo ahead cd /path/to/xmind2testlink/web pip install -r requirements.txt -U python application.py * Running on http://127.0.0.1:5000/ (Press CTRL+C to quit) * Restarting with stat
这时你启动浏览器就能够看到一个web版的转换界面。
这是一个由Flask写的简单程序,你能够将其部署到专门的服务器,详情请查阅官方文档。
其实在实现一个小工具的过程当中,从构思想法到实现,有不少内容和未知须要去探索。xmind2testlink 涉及到的知识点也很多,好比 PyPI 打包发布,python读取zip文件,解析xml,Flask,网站先后期,服务器部署,持续集成,单元测试等等,我我的收获不小。
若是你工做或生活也有各类想法,不如动手去作,失败了没啥大不了的,万一成功了呢。
关于做者:Toby Qin, Python 技术爱好者,目前从事测试开发相关工做,转载请注明原文出处。
欢迎关注个人博客 https://betacat.online,你能够到个人公众号中去当吃瓜群众。