做者:肖鋒
來源:公衆號滴滴技術前端
隨着互聯網的快速發展,業務的快速迭代,對項目流程各環節的效率要求愈來愈高,不少QA開始選擇使用線下xmind來編寫和執行用例進行測試,但面臨的問題也愈來愈多:java
所以,咱們須要一套完善的測試用例管理系統來知足咱們的平常測試需求。而後,業界比較可靠的用例管理平臺,如test-link,QC,禪道等,它們均採用傳統用例管理方式,相似excel的操做體驗,測試用例編寫過程較繁瑣,與當前業務廣泛使用的腦圖管理方式不匹配,也不符合當前業務快速迭代的訴求。mysql
AgileTC是一套敏捷的測試用例管理平臺,具有與xmind等腦圖工具一致的操做體驗。支持測試用例管理、執行計劃管理、進度計算、多人實時協同等能力,方便測試人員對用例和測試過程進行管理。react
線上化的操做方式便於測試資產沉澱和測試過程數據沉澱,爲測試改進提供抓手。git
產品能夠獨立使用,也支持以組件化方式嵌入項目管理平臺,配合項目管理使用。github
▍測試用例集管理web
AgileTC可以將用例集與需求關聯,支持xmind/xmind zen的導入/導出,具有豐富的搜索能力,如根據用例集名稱、建立人、管理需求和建立時間進行搜索。spring
▍用例編輯sql
AgileTC支持多人實時協同編輯用例集,其中一我的的修改,會實時同步到打開相同用例的其餘客戶端,實現更加高效的測試集編寫和測試執行協同。支持用例優先級和自定義標籤標記。服務端和客戶端增長了定時巡檢探活機制保障鏈接穩定性。支持鏈接異常(如瀏覽器異常退出或系統故障等)場景下,自動保存用例集。數據庫
▍測試任務管理
用戶能夠根據用例中的優先級和標籤圈選測試用例,組合成自身須要的測試任務。支持任務分配郵件通知機制,用戶能夠在測試任務中標記用例測試狀態,並查看測試任務的總體進展。
▍架構
AgileTC的核心是測試用例集和測試任務,其中用例集的編輯和任務編輯當前均基於腦圖,所以合併爲一個平臺。最終由三個平臺組成:腦圖編輯平臺、用例集管理平臺和測試任務管理平臺。如下主要介紹腦圖編輯平臺。
腦圖編輯功能主要由前端實現,採用react框架,包含腦圖節點的增長、刪除、修改功能,以及腦圖樣式和佈局等。部分腦圖基本繪製和佈局能力借鑑了百度開源kity的能力。在這些腦圖基本能力之上,支持測試經常使用的標籤,如優先級和執行步驟、預期結果,支持測試進展的標記;進行了讀寫權限隔離,讓測試設計和測試執行分開,使測試分工更有序。
多人實時協同採用websocket通訊協議。客戶端打開用例集或者任務詳情,在服務端會建立一個客戶端session,並判斷當前是否有其餘客戶端打開相同的用例集或任務,若是有,會觸發用例集的落庫。客戶端修改時,會將變動diff發送到服務端,服務端將diff發送到其餘客戶端保持實時同步。客戶端退出時,會觸發自動保存。
▍架構
▍下載
從github下載AgileTC源碼:https://github.com/didi/AgileTC
git clone https://github.com/didi/Agile...
或者 直接Download ZIP
▍準備
▍運行
mvn spring-boot:run
瀏覽器打開 http://localhost:8094/case/caseList/1
▍使用
1. 建立測試集
2. 建立測試集
3. 建立測試任務
4. 編輯測試任務
AgileTC基於腦圖的基本能力,實現了線上化測試用例管理和測試任務管理的能力。讀者能夠直接使用AgileTC進行用例管理,也能夠將其做爲組件嵌入項目管理平臺,配合項目管理使用。在業務快速迭代的背景下,使用腦圖進行測試分析和用例管理,已經愈來愈流行。而AgileTC做爲線上化、測試定製的腦圖平臺,將進一步提高測試效率,歡迎使用和反饋!
GitHub項目地址
https://github.com/didi/AgileTC