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