【編者按】為深入貫徹落實黨的二十大精神,引導基金行業機構踐行《證券期貨業科技發展“十四五”規劃》,共促基金行業數字化轉型,按照中國證監會總體工作部署,于2022年11月開展“證券期貨業數字化轉型主題宣傳月”活動。通過開展“證券期貨業數字化轉型主題宣傳月”活動,搭建交流平臺,展現數字化轉型成果案例,激發金融科技創新活力,營造金融科技長效發展新生態。該篇為“證券期貨業數字化轉型主題宣傳月”系列宣傳之二十。
IT自動化測試項目
——匯添富基金
我司測試團隊于2015年正式成立,最早介入的是電商直銷測試項目,隨著直銷業務的發展及我司IT項目逐漸增多,測試團隊規模從最初的三人擴充至目前的四十多人(含外包),經過幾年發展,吸取了其他金融行業的測試經驗,現已形成了一整套適合我司自身IT特點、成熟的測試體系,覆蓋的測試類型包含功能、自動化、性能、接口測試等。
一、測試工作活動周期
二、數字化轉型需求與自動化測試建立
國內自動化測試[1]在2008年左右興起,金融業最早使用自動化測試的主要是銀行、券商、外匯交易中心等大型的金融機構。隨著市場對于公募基金的認可增加,為了適應需求激增的市場,我司對于直銷項目的迭代速度要求越來越高,迭代頻率也越來越快。我司IT測試在人力資源投入有限的情況下于2016年自主研發了第一款基于GUI的自動化測試產品-Excel-Driven-HTF自動化測試框架(圖2)。
該套框架是基于當時主流PC端的GUI自動化測試基礎上研發的,擁有運行錯誤自動截屏、錯誤恢復機制、自定義函數、自動生成Excel報告[2]等功能,也有腳本[3]易于維護、業務人員只要填寫Excel便能參與自動化測試等特點。該套Excel驅動框架在數字驅動、關鍵字驅動的基礎上,隨著業務的發展不斷更新升級。
(一)建立自動化測試體系
在自動化測試體系[4]的建立過程中,首先,確定自動化測試適用范圍、梳理測試對象,并開展自動化測試可行性調研等工作;其次,制定自動化測試流程、規范;最后,執行自動化測試。并以基礎交易為試點,以例行上線為場景,構建了日常自動化驗證機制與手工測試相結合的測試體系。
自動化測試不能單純地理解為優于手工測試的一種測試方式。自動化測試、性能測試、手工測試、接口測試、白盒測試等不同的測試手段都是作為測試效能的一種實現方式,不能簡單地做橫向比較。所有的測試手段都是為了提升項目質量為目標,以項目能夠高質量上線為導向,能夠容納接受并服務于所有IT項目,這是建立測試體系的初衷。
(二)自動化團隊建設
團隊建設方面,以自有員工為基石,招聘自動化測試資深外包人才,組建團隊。同時提升自動化測試團隊的業務知識和測試技能,定期培訓、交流并建立了與手工測試不同的項目化考核體系。
自動化團隊不僅要能夠寫腳本、改框架,同時也要熟悉業務。所有測試人員不僅要求有良好的測試相關技術,也要對業務有深入的了解。在自動化測試做到一定程度后,自動化測試團隊的業務水平應不亞于業務人員,甚至可以根據實踐的操作經驗給專業的業務人員提出專業的見解或建議。
(三)自動化測試服務階段
自動化測試在完成了調研及框架搭建后,便可以在參與的項目中進行實踐。在服務階段,有如下的定位:
(1)建議自動化測試腳本完成后,服務于自動化回歸測試[5]、冒煙測試[6]。
(2)參與回歸測試階段(每一輪手工測試最后幾天執行自動化測試)。
(3)執行環境為測試環境[7]。
(4)每一輪測試手工測試與自動化測試同步進行,不存在執行順序區別。
(5)自動化測試定位于日常版本的回歸測試。
(6)自動化測試也可用于緊急版本的回歸測試。
依托于以上的定位來劃分與手工測試職能,能夠較好地與手工測試結合,也便于后期進行相關的問題排查,并更好地補充測試腳本或測試案例。
自動化測試在服務階段也并不是一成不變的,會根據實際測試情況不斷地進行調整。
(四)與手工測試結合
自動化測試和手工測試應合作執行,前期手工測試可與自動化測試并行,待此模式成熟后,手工測試可不用測試自動化所覆蓋的范圍。如有需求,自動化測試可協助手工測試部署自動化測試框架,以便在手工測試有小量需求時,可自行運行自動化測試腳本。
同時,手工測試和自動化測試也應定期進行工作互換,只有真正實踐后才能理解兩者的共同處和不同處,工作中才能更緊密的配合。
由于自動化測試工具的特性,自動化測試案例不同于手工測試案例,自動化測試案例的編寫更機械化、細致化。在編寫案例過程中著重于從框架執行的角度,同時也依賴于手工測試回歸案例。自動化的測試案例的要求是覆蓋于手工回歸案例,又不僅限于手工回歸案例。
(五)評價自動化測試的作用
對于實施了自動化測試的直銷項目,形成了以下3點的評價:(1)縮減單個項目測試時間。(2)提升系統整體測試效率。(3)因成本問題并不是所有項目都適用。隨著自動化測試的逐步深入,自動化測試的作用也越來越顯著,并得到了各方的支持與認可。
三、問題與解決
自動化測試實施的初期遇到過很多問題和困難,比如前期調研不足,導致未正常獲取都需求相關文檔;以手工用例為基準,導致高度依賴,產生了很多額外的工作量;部分子功能模塊手工用例數據不完整,自動化同步不完整;業務知識理解或掌握不足;減少測試工作量的目標及效果不是很明顯等。
基于這些問題,結合以往項目經驗,測試團隊進一步地熟悉了解系統相關業務,以便更精確地定位腳本開發調試執行過程中的問題,豐富腳本數據、案例,加強與業務人員的溝通協助與配合機制,提高對工具的使用程度,最大程度地利用自動化測試資產。豐富自動化測試手段,不能只局限于自動化測試工具的使用上,要隨著對系統的了解不斷加深,不斷地加強和完善自動化實施和應用策略。
四、數字化轉型需求升級
隨著應用軟件市場APP化的全面推廣,我司APP需求占據越來越大的比重,APP相關的測試工作量也隨之激增,因此在測試過程中面臨著既要兼顧傳統PC端又要測試APP的問題。
在測試案例及回歸測試工作量增加到一定程度后,初期測試團隊采用了selenium+python的框架來進行APP的自動化測試工作。由于都是基于開源工具研發的框架,在自有測試人員有限的情況下,無法投入更多的人力在框架及腳本維護上,因此測試團隊及時改變了策略,選用了外購成熟的APP界面UI自動化測試產品。經過半年多的使用,APP自動化測試的效果逐漸體現,主要體現在以下兩點:一是減輕了手工回歸測試的工作量,在一定程度上取代了手工回歸測試。二是彌補了手工測試受限于測試時間無法覆蓋到歷史版本的問題。
除了電商直銷APP測試外,我司的“添富小i”也使用了同一套APP自動化測試體系。在使用了該套自動化測試體系后,該APP的手工測試工作量也有所降低。
在手工測試人員減少的情況下,2021年全年共計實現手工回歸用例替代1.2萬余條,全年共計運行版本共計1530+輪次,運行腳本數量超過38萬個。且隨著版本的更新,自動化占比逐步提高,2021年累計發現手工不易發現的bug二百余個。此外跟隨我司APP發版節奏,在APP上線后1-2周內實現自動化,為下一個版本發布提供回歸自動化支持。
目前我司APP自動化測試已建立DailyRun機制,即每日在凌晨12點至次日早上8點會在無人值守的情況下自動執行測試計劃。整體手工案例覆蓋率-增加回歸案例集后的橫向覆蓋率達到86%左右。部分項目手工測試人員也已參與執行自動化測試案例。
自從數字化轉型需求升級以來,APP自動化測試累計共覆蓋我司自研APP產品“現金寶”、“添富小i”共計63個版本,共實現Android&IOS腳本數量2.5萬余個,共計運行版本共計5000+多輪次,運行腳本數量大于103萬個。去除環境因素導致的運行失敗,運行成功率大于91%。共計實現手工回歸用例替代5萬余條,腳本總體實現自動化占比85%以上,且隨著版本的更新,自動化占比還在逐步提高。
在數字化轉型這條路上同樣遇到了不少問題,比如單版本的腳本運行時間在5-6個小時,運行時間較長;單版本的自動化腳本數量近500個,維護成本越來越大;每個版本由于環境問題導致的腳本運行失敗占比在60%左右,不但影響腳本的運行速度和運行質量,而且為事后的腳本分析增加了很大的干擾。面對以上問題測試團隊采取了增加端口、定時清理日志、新增一套自動化測試環境、增加腳本運行可運行時間等措施。目前所有已知問題都已經得到了有效改善。
注:[1]自動化測試,本文中所有“自動化測試”都指“自動化功能測試”。利用GUI自動化測試工具來開發和執行測試腳本,以此驗證是否滿足規定的需求或識別出期望的結果和實際結果之間有無差別。[2]Excel報告,指“自動化功能回歸測試報告”。描述對系統和系統部件進行的自動化功能回歸測試行為及結果的文件。[3]腳本,指“自動化功能回歸測試腳本”。能夠被自動執行的自動化功能回歸測試案例,它和一個自動化功能回歸測試需求相對應。[4]自動化測試體系,指“自動化功能回歸測試體系”。對給定的自動化測試,就其建立、運行和結果估計所作的詳細說明。常常把一組有關的過程組織起來形成自動化功能回歸測試過程文件。[5]自動化回歸測試,本文中“自動化回歸測試”都指“自動化功能回歸測試”。選擇性的重新自動化功能測試。利用GUI自動化測試工具來開發和執行測試腳本,目的是通過檢測系統和系統部件在修改時所引起的故障,以此來驗證上述修改未引起不希望的有害效果,證明修改后的系統和系統部件仍能滿足規定的需求。[6]冒煙測試,在某一版本build建立后,對系統的基本功能進行簡單的測試。這種測試強調功能的覆蓋率,而不對功能的正確性進行驗證。冒煙測試的對象是每一個新編譯的需要正式測試的軟件版本,目的是確認軟件基本功能正常,可以進行后續的正式測試工作。[7]環境,指自動化測試執行工作所需的環境,它包括手工測試環境,即自動化測試被測系統環境和自動化測試腳本運行的相關環境,即自動化測試運行環境。
23:23 | 2024年度深市上市公司業績穩中有進... |
22:27 | 以點帶面 穩鏈強鏈 2024年度科創... |
22:26 | 出口含“新”量更足!滬市主板公司... |
22:23 | 證監會公布《證券期貨業統計指標標... |
21:59 | 基礎穩、韌性強 滬市主板公司2024... |
21:52 | 澄天偉業:第五屆監事會第三次會議... |
21:52 | 錦波生物:第四屆董事會第十次會議... |
21:52 | 中遠通:第三屆董事會第三次會議決... |
21:52 | 迪森股份:第九屆董事會第一次會議... |
21:52 | 天力鋰能:第四屆監事會第十次會議... |
21:52 | 正川股份:2024年年度股東大會決議... |
21:52 | 迪森股份:2024年年度股東大會決議... |
版權所有證券日報網
互聯網新聞信息服務許可證 10120180014增值電信業務經營許可證B2-20181903
京公網安備 11010202007567號京ICP備17054264號
證券日報網所載文章、數據僅供參考,使用前務請仔細閱讀法律申明,風險自負。
證券日報社電話:010-83251700網站電話:010-83251800 網站傳真:010-83251801電子郵件:[email protected]
掃一掃,即可下載
掃一掃,加關注
掃一掃,加關注