數字化轉型模式下自動化測試新形態探索實踐

danny_2018發表於2024-01-29

文 / 中國光大銀行金融科技部 李蕾 史新麗

近年來,伴隨著商業銀行數字化轉型、人工智慧技術的迅猛發展,以及資訊科技應用創新工作的不斷深化,金融行業不斷加快其產品研發節奏,以促進其業務模式的創新和產品升級。在這個過程中如何保證產品的高質量快速迭代,提升產品研發效能成為金融科技的一個重要課題。為此,光大銀行積極探索開創研發測試新模式,構建自主開放的自動化測試生態。

傳統自動化測試面臨的挑戰

在測試業務數字化轉型的背景下,傳統的自動化測試模式在場景覆蓋、自動化能力、開放性等方面均存在不足,具體如下。

1.自動化測試應用不均衡。在金融行業,測試業務包含多個階段:開發聯調測試階段、系統測試階段、驗收測試階段以及投產後業務驗證測試等多個階段,涉及到業務、開發、測試和運維多種角色人員,傳統的自動化測試主要應用於系統測試或驗證測試階段的迴歸測試,在對測試場景和測試階段的覆蓋上存在盲區。

2.全流程自動化測試能力不足。測試全流程包括測試分析、測試設計、測試執行、測試結果追溯,傳統的自動化測試主要應用於測試執行階段,在測試分析、測試設計和測試結果追溯等階段仍然存在空白。

3.自動化測試模式亟待改善。傳統的自動化測試模式大多是“作坊式”的建設模式,依賴於少數自動化測試人員,缺少頂層設計和統一標準,使得自動化測試難以向規模化、差異化方向發展。

為了支援測試業務數字化轉型,打造自動化測試價值鏈,我行從以下兩方面著手推動自動化測試能力的建設:一是構建自動化測試體系,二是融合前沿技術打造一體化自動化測試平臺。

以測試數字化轉型為目標,構建自動化測試新體系自動化測試體系

秉承測試業務數字化的願景目標,透過制定統一的自動化測試管理規範,形成標準化應用推廣理念,自上而下推動自動化測試在我行的應用升級。以測試技術、工藝和流程的創新為引領,提供數字化的決策支援,助力我行敏捷化、數字化測試轉型。

圖1 自動化測試體系

1.以提升測試效能為組織級目標建立組織級管理規範。從組織級建立自動化測試管理規範,推動自動化測試與測試業務全生命週期的深度融合,使自動化貫穿測試全流程。制定自動化測試案例管理標準,規範案例設計,對案例全生命週期進行管理,確保案例資產的有效性。依託管理規範和管理標準,按照我行系統現狀制定可落地的推廣方案,進行“分層、分級、分階段”的應用推廣,既能保證自動化測試應用的全面性,又能根據系統特點體現差異性。同時,設計可持續度量機制,建立事前、事中、事後跟蹤度量體系,使得應用效果實時可見可跟蹤,形成自動化測試工作的持續推動力。

2.以“場景化”模式推進自動化測試對業務系統的全面覆蓋。為了推進自動化測試的價值轉化,滿足測試的左移和右移需求,我們採用了“場景化”模式來推進自動化應用的全面覆蓋。當測試在產品研發的整個生命週期中,持續推進自動化測試的左移和右移,挖掘自動化應用需求,形成自動化測試場景。按照“孵化一個場景,推廣一個場景”思路,不斷擴大自動化測試的應用和價值轉化,使得自動化測試深入到測試業務的各個環節中去。在這個過程中孵化出的場景如具有通用性的自動化冒煙測試、自動化迴歸測試、手自一體化測試、業務產品測試、業務驗證自動化等,以及針對某些特定系統的全流程自動化應用場景等。

3.對自動化測試資產進行全生命週期的治理提升資產複用率。自動化資產同其它的業務資產一樣需要進行管理才能發揮其最大的價值,按照資產的屬性需要具備“全面性”“準確性”“可更新”“可複用”的特點。為此我行建立了自動化資產建設和衡量標準,對自動化資產進行有效性檢測和全生命週期的管理,提供可量化可跟蹤的方式促進自動化資產的維護和更新,從而推動有效自動化測試資產的有效積累,築牢自動化測試根基,實現自動化資產的價值轉化。

4.藉助新技術和現有資源構建自動化測試新形態。結合自然語言處理、人工智慧識別、精準測試技術以及測試行為大資料分析等智慧化技術,支援測試全生命週期的測試分析、測試設計、測試執行、測試過程追溯、測試結果評估以及測試反饋等各個環節。透過智慧化技術提高測試分析的準確度,降低測試案例的編寫成本,實現了測試案例的精簡有效和測試缺陷定位的快捷準確。對測試全過程的各環節提供數字化指引和測試加速。

以測試新理念為引領,建設一體化智慧測試平臺

為了滿足新形勢下的自動化測試需求,我行著力打造了一體化智慧測試平臺。平臺從架構上分為前臺、中臺和後臺三層。前臺負責按需提供測試服務場景;中臺負責提供通用能力包括介面模型統一管理、自動化案例設計、資料設計、通用智慧化能力和度量分析能力;後臺負責集中管理各型別測試工具,並進行集中的排程。接入中心整合了我行的管理類、資產類、研發類和分析類工具平臺進行技術能力複用和自動化能力輸出。透過上述三層架構,一體化智慧測試平臺在提升使用者體驗、最佳化使用者旅程、促進業務轉型發展上發揮出積極的作用。

圖2 一體化智慧測試平臺

1.標準化的案例設計與管理。一體化智慧測試平臺提供標準化的案例結構設計引導,支援案例的分層設計管理和案例的全生命週期管理。使用者可以使用基礎原子庫—複合案例—測試場景的三級模式構建自己的案例場景,不同的層級之間可以進行結構或資料的同步,當有業務變更時,使用者僅需修改原子案例即可實現所有相關案例的變更。另外平臺可自動進行案例有效性和鮮活性分析,對案例的建立—使用—消亡進行全生命週期的管理。標準化的案例結構、分層的案例設計和案例的全生命週期管理極大地推動了自動化測試“活資產”的積累,提升自動化測試資產在測試、開發和運維之間的共享和複用,盤活研發過程中各階段的自動化測試。

2.智慧化的案例編寫與生成。採用AI智慧化技術和自研案例生成演算法進行案例的編寫和生成。透過NLP技術支援使用者直接使用自然語言編寫自動化測試案例,做到懂業務即可寫自動化案例,簡化使用者操作。透過智慧化識別和檢測技術實現AI識別和控制元件識別雙引擎驅動,提高自動化測試場景的適應度。在案例生成方面,結合多年的測試經驗,自研案例派生演算法,基於自定義變數因子派生,透過與基準案例結果對比進行校驗,避免了無效案例或覆蓋不全的問題,不僅提供合理範圍案例選擇,又保證業務高覆蓋度測試,降低維護成本,快速定位問題,實現測試高效交付。

3.規模化的長鏈路測試執行。由於銀行業務流程複雜度高,一個完整的業務流程需要貫穿多個異構系統,為了保障完整業務鏈路的自動化測試,我行自研了長鏈路測試模型,透過該模型實現了業務鏈路向自動化測試長鏈路的轉化,解決了長鏈路自動化測試在異構多端場景下執行的時序性問題,異構環境引數傳遞問題和執行的連續性問題。同時,自動化測試平臺納管了多種型別的雲端執行機,透過排程中心排程不同型別的執行機實現長鏈路案例的大規模的併發測試。

4.一站式的測試服務場景。一體化智慧化測試平臺建設實現了從“工具化”“中臺化”向“服務化”演進,透過與多種工具平臺進行整合,最佳化使用者旅程,提供一站式的智慧化測試服務。以某個測試需求為例,需求對應的程式碼提測後,自動構建自動化測試任務,透過以下兩種方式進行測試設計覆蓋:一是案例自動化推薦,透過對需求進行業務變更影響分析、風險識別分析、程式碼變更影響分析,自動推薦測試需求相關自動化案例。二是案例自動生成,透過案例膨脹功能自動化生成覆蓋介面屬性資訊的正反案例,擴大對介面屬性資訊和業務邏輯的覆蓋率。自動化測試集構建完成後,即可開始進行自動化測試執行,在執行的過程中可實時對變更範圍的測試覆蓋情況進行檢核並查漏補缺。對於測試執行失敗的案例可以透過自動進行失敗日誌抽取、程式碼執行軌跡分析等協助使用者進行缺陷的定位和分析,確認後的缺陷可以一鍵上傳至BMS。一站式測試服務場景構建了全新的測試生態鏈,使得使用者快捷觸達測試所需的能力、工具和服務,加速測試轉型升級。

新形態下自動化測試效果與展望

新形態下的自動化測試,構建了自主開放的測試生態,實現了自動化測試的左移、右移和縱深發展,形成了“人人自動化”“處處自動化”的自動化測試新模式,為我行測試業務數字化轉型形成助力。

截至目前,該平臺已經實現了對全行重要系統的100%自動化測試覆蓋,交易覆蓋率超過80%,積累有效自動化測試案例10萬條,累計執行測試案例50多萬條。在引入智慧化測試技術後,自動化案例編寫效率提升2倍,維護工作量下降60%,釋放了更大的產能。精準的定界分析使得測試風險前置,測試覆蓋度提升30%,測試需求分析提速10%。整合敏捷排障方案和異常告警後的自動化測試問題分析效率提升25%。

後續我行將繼續圍繞“加快推進數字化轉型,打造數字光大”的發展願景,持續進行測試新技術探索和業務模式創新,錘鍊數字化競爭力,賦能業務發展。

來自 “ 金融電子化 ”, 原文作者:金融電子化;原文連結:https://mp.weixin.qq.com/s/mNEj3c7wpkczDWpdnuo4sg,如有侵權,請聯絡管理員刪除。

相關文章