MeterSphere案例分享丨易盛信息MeterSphere接口測試使用經驗
福建永福信息科技有限公司(以下簡稱為永福信息)是國內首家民營電力行業上市公司福建永福電力設計股份有限公司旗下的高新技術企業,致力于為工程設計企業提供全面、系統的企業信息化解決方案。
永福信息長期專注于工程設計領域的軟件開發,已形成涵蓋企業綜合辦公、經營管理、項目管理、協同設計、數字檔案管理等模塊的企業信息化解決方案,業務涉及電力、水利、建筑等眾多行業。目前,永福信息擁有近200人的專業IT研發團隊,測試中心人員15人,團隊規模還在持續擴大中。
我們面臨的問題
對于永福信息的測試團隊而言,面臨的挑戰包括:
- 組織結構不斷擴大,無法有效地合理安排測試資源;
- 產品數量增加,無法有效地跟蹤管理測試項目;
- 測試案例繁多,無法準確量化度量并合理協同利用。
在測試團隊和開發團隊人員比例差距較大的情況下,測試團隊需要覆蓋的測試項目眾多。每個項目定制化需求很高,測試人力不足,測試任務繁重,測試逃逸頻率高,這些都是面臨的現實問題。如何才能提升測試管理、測試效率,保證每個產品的測試質量呢?
在使用MeterSphere之前,我們是這樣做的:
■ 測試計劃管理:測試團隊內部維護一份大致計劃,協同部門針對每個項目還有獨立的一份需求計劃,版本持續迭代。這樣做的缺點在于,在任務多的情況下很難合理地安排測試資源,并且也難以及時地跟蹤了解每個任務的進展;
■ 功能測試案例 & 系統功能測試報告管理:每個產品獨立一個文件夾,包含產品系統功能測試案例、性能測試案例和系統整體測試報告。這樣做的問題是測試資料歸檔混亂,案例查找困難、維護困難,案例更新滯后。每個案例的實際執行情況并不能很好地掌握。
■ 接口 & 性能測試案例腳本管理:通過SVN進行協同管理,并持續維護更新。這樣做的缺點在于,案例協同設計不及時,而且最新腳本時不時會出現被哪個粗心小伙伴覆蓋的情況。功能測試、接口測試、性能測試整體測試報告人工整合也十分費時耗力。
選用MeterSphere開源持續測試平臺
基于以上的種種困擾,我們決定改變,系統性地解決當前測試工作所存在的問題。在幾經波折調研試用了幾款同類開源產品后,我們選擇了MeterSphere開源持續測試平臺。
MeterSphere吸引我們的地方是因為它“接地氣”的產品設計,合理有效集成了最通用的測試管理功能和最常用的測試工具,能夠實現測試團隊的高效協同,滿足了我們現階段的工作需要。并且預計在未來很長一段時間也可以支撐我們更加豐富的測試工作拓展。
我們圍繞MeterSphere平臺重整出發,以項目維度展開測試工作,按照項目制定測試計劃、測試范圍、測試跟蹤,并生成相應測試報告。在此過程中結合測試團隊人員的能力成熟度、人員工作量、任務進度、結果輸出等情況合理分配工作,并且評估團隊人員績效。
■ 整體流程:項目管理→編制項目測試計劃→設計測試用例(功能測試用例、接口測試用例、性能測試用例)→組織測試用例評審→執行測試→輸出測試報告。
■ 測試項目管理:維護測試團隊覆蓋測試的產品/項目,項目關聯TAPD項目ID。這樣做的目的是為了在該項目測試計劃關聯的案例執行過程中,對執行案例提缺陷時,可以將缺陷同步致TAPD,最終生成測試報告時候可以準確地統計項目缺陷數據。
圖1 MeterSphere 測試跟蹤項目列表
■ 測試計劃管理:測試計劃基于項目創建,不同版本可能存在多個測試計劃。按照項目版本迭代計劃進行匹配,測試計劃與釘釘群機器人打通,實現實時計劃執行進度變更通知,提升測試進度管理以及測試效率的跟蹤。
2 MeterSphere 測試計劃列表
■ 測試案例管理:功能測試用例、接口測試用例、性能測試用例協同設計,豐富測試策略和測試方法,并有效增加測試覆蓋度。
圖3 MeterSphere 測試用例管理界面
■ 測試用例評審:測試用例內部評審更加高效,用例評審是否通過支持實時通知,測試用例內部評審完一輪后再導出給協同部門進行評審。同時,還可以對測試用例進行評論,用例補缺補漏。用例評論可通過釘釘機器人進行消息通知,督促及時調整完善測試用例。
圖4 MeterSphere 用例評審任務列表
圖5 MeterSphere 用例評審詳情
■ 測試執行:測試計劃關聯測試用例,測試用例關聯TAPD缺陷,協同開展測試,有效縮短測試周期。
圖6 記錄測試用例執行結果
■ 測試報告:每一個測試計劃完成后,即生成相應的測試報告,測試質量反饋高效,真正做到了有理有據。
圖7 生成測試報告
項目組成員每一次接收到測試報告后的反應如下:
- 開發小陳:Oh,No!我負責的模塊這么多缺陷,心態崩了啊!
- 開發小林:不可能,我的模塊怎么這么多問題,我做過自測了啊!
- 開發主管:怎么回事?這一輪提測還有這么多缺陷,這提測質量不行呀。
- 項目經理:這測試結果不服不行。
■ 持續測試:MeterSphere插件與Jenkins相互集成。在構建步驟中添加MeterSphere插件,每一次系統升級調用MeterSphere測試平臺中的API接口測試案例,實現接口自動化回歸測試。回歸測試完成后,釘釘機器人實時通知升級回歸測試結果。
圖8 通過 Jenkins 進行持續測試
圖9 通過釘釘通知測試執行結果
圖10 執行結束后的接口測試報告
總的來說,通過MeterSphere持續測試平臺,我們獲得的收益包括:
- 把測試工作的關鍵活動有序地串聯在一起,實現了測試全生命周期的管理;
- 測試活動中的測試用例和測試結果持續豐滿,測試成果逐步積累沉淀;
- 積累量化的測試數據對測試人員進行管理,可以以此建立一套可量化的評測體系來衡量測試人員的工作情況。
未來我們還將基于MeterSphere平臺持續展開測試過程改進,充分暴露測試過程中各項問題,持續優化測試過程。
圖11 測試過程改進方向
感受與評價
我覺得MeterSphere持續測試平臺最實在的是集成測試工具這一點。將測試工具系統化的完美設計思路,同時添加核心、關鍵測試管理模塊,沒有冗余不切實際的功能,設計精簡且合理。平臺支持測試團隊的高效協同,整體流程使用符合測試人員的工作習慣,十分“接地氣”。
“開源”也是MeterSphere的關鍵亮點,這樣MeterSphere擁有一群有激情、有熱情的研發團隊,加上一群熱愛測試的粉絲群。大家在使用中互相學習、共同提升、交流思想、碰撞智慧。相信在這種開源的模式之下,MeterSphere持續測試平臺會越做越好。
期待與建議
從使用者的角度,對MeterSphere持續測試平臺提出以下幾點建議:
1. 更全面地打通與缺陷管理工具的對接。目前MeterSphere上提的缺陷因為非原缺陷管理系統上的缺陷模板,必須在缺陷管理系統上做缺陷的二次編輯,使用上相對比較麻煩。我們的測試團隊組員也普遍反饋這一問題;
2. 建議增加基礎數據自定義配置的功能;
3. 豐富自定義測試報告功能;
4. 實現用戶注冊功能,或者增加釘釘、企業微信掃描供協同團隊查看的功能;
5. 希望接口測試實現對JavaScript的支持;
6. 接口測試在同一場景下實現對多環境的支持。比方說實際的使用場景為,業務子系統在接口測試前需要先登錄,而登錄也是獨立的子系統。環境不一樣,同一個業務場景中需要使用到登錄環境的配置和業務子系統環境的配置;
7. 性能優化建議,數據量逐漸多了,系統會慢慢變卡。