回顧: 你據說過思惟導圖嗎?
本文咱們將使用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,你能夠到個人公衆號中去當吃瓜羣衆。