
詳細介紹技術背景
隨著數字化轉型的深入推進,商業銀行的產品迭代不斷加快,同時,商業銀行的業務性質要求其應用系統有極高的穩定性和可靠性,既要快又要穩,自動化測驗是解決這一問題的關鍵,因此,最近幾年,各家商業銀行均在大力發展自動化測驗,
在這一行程中,自動化測驗的設計理念不斷完善,新的技術不斷應用,使得自動化測驗資產的積累代價和維護代價不斷降低,
伴隨而來的,自動化測驗資產的數量不斷增長,
以某商業銀行為例,2018年8月,全量自動化測驗資產(腳本、案例)約3800條,在不足兩年的時間內,到2020年6月,全量自動化測驗資產已超過10萬條,增長26倍,
其中,對執行資源消耗較大的界面自動化測驗資產,從1300余條,快速增長至39000余條,增長30倍,
同時,隨著數字化轉型的深入推進,敏捷研發模式大幅提升,特別是在面客類應用系統中,敏捷已成為主流,
在敏捷研發模式的迭代周期內,對自動化測驗的回歸需求顯著增加,
此外,隨著DevOps工具鏈的建設完善,自動化測驗能力逐步從測驗部門輸出至開發部門,在每日構建、制品晉級、版本發布等流程中已成為必須的環節,
因此,自動化測驗資產的使用頻度明顯提升,
統計顯示,某商業銀行2018年8月運行的自動化測驗資產不足2萬條次,至2020年4月,單月運行數量已超過97萬條次,兩年增長47倍,
隨著自動化測驗執行能力的不斷提升,自動化測驗執行結果資料指數級增加,隨之而來的大量結果分析處理作業將成為自動化測驗的開展的瓶頸,亟需配套高效的自動化方法,
針對上述問題,本發明提出了一種商業銀行組織級介面自動化測驗結果分析方法與裝置,通過介面測驗結果模型化方法和基于錯誤碼庫、非缺陷知識庫的錯誤歸類分析方法,輔助測驗人員高效實施大規模、多系統的介面自動化測驗結果分析處理,
研究現狀
對于自動化測驗的結果判斷,當前已有的技術方案主要有以下三種:
1、人工對回傳報文檢查分析;
2、針對單個介面測驗腳本撰寫結果檢查腳本;
3、對同類介面的測驗,截取回傳報文某關鍵引數進行檢查,
但是:
- 人工分析依賴測驗人員經驗,且效率低下,
- 針對單個介面測驗腳本撰寫結果檢查腳本的方法會增加測驗腳本撰寫和維護的難度,無法適應成規模的介面測驗,
截取回傳報文某關鍵引數進行檢查的方法,需應用系統的介面有固定欄位回傳應用級對錯資訊,且僅能判斷交易應用級對錯,對錯誤無進一步歸類的能力,無法避免錯誤分析需要的大量作業,
技術方案
商業銀行的組織級的自動化測驗平臺所管理的介面自動化測驗案例往往數量龐大、隸屬于不同的系統,且介面的通訊方式多樣,報文的種類各不相同,這就對組織級的介面自動化測驗結果分析提出了很高的要求,
本專利的方法及裝置,首先在組織級層面,將介面自動化測驗的結果模型化,再基于組織級的錯誤碼庫和非缺陷知識庫,分析介面自動化測驗的結果,降低人工分析作業量,提升“執行錯誤”與真實缺陷的逼近程度,
介面測驗結果模型化方法
本專利的方法及裝置中,介面測驗結果的資料模型包括結果標志、錯誤碼、錯誤資訊和回傳資訊,在介面測驗的程序和結果中,從通訊級到應用級提取該資料模型,方法如下:
1、在平臺執行介面測驗的程序中,若出現任何程式未處理的內部例外,則結果標志為I,此時錯誤碼、錯誤資訊和回傳資訊均為空;
2、在常見的http通訊、tcp通訊、webservice通訊等通訊方法中,若無法正常通訊并拿到預期的回傳報文,則認為在通訊級發生例外,結果標志為U,此時錯誤碼、錯誤資訊均為空,通訊例外的任何回傳資訊存盤在回傳資訊中;
3、在能夠拿到正常的回傳報文的情況下,一般統籌設計良好的系統,會在回傳報文公有域特定欄位回傳應用級處理是否正確,若應用級處理錯誤,則還會在回傳報文公有域特定欄位回傳錯誤碼和錯誤資訊,
(1)若應用級處理正確,則結果標志為N,此時錯誤碼、錯誤資訊均為空,回傳資訊存盤回傳報文;
(2)若應用級處理錯誤,則結果標志為E,錯誤碼、錯誤資訊存盤回傳報文提取的相應資訊,回傳資訊存盤回傳報文;
(3)在金融系統中,為保證安全,重要金融交易一般會涉及雙人復核或者遠程授權的程序,此時應用級處理結果為“需要授權”,則結果標志為A,錯誤碼、錯誤資訊均為空,回傳資訊存盤回傳報文,
4、在實際實施組織級介面測驗覆寫時,一些存量系統未在公有域特定欄位回傳應用級處理結果,此時,平臺后退至通訊級結果判斷,若正常通訊并拿到預期的回傳報文,則結果標志為N,此時錯誤碼、錯誤資訊均為空,回傳資訊存盤回傳報文,

錯誤碼庫和非缺陷知識庫設計方法
基于組織級平臺的介面測驗結果模型化資料,本專利的方法為各系統量身定制錯誤碼庫和非缺陷知識庫,對大規模介面回歸測驗的結果進一步分類、分析,
錯誤碼庫以系統名區分被測系統,并對結果標志為E的介面測驗結果細分錯誤碼,分別設定錯誤描述、匹配方式和匹配運算式,
匹配方式分為三種:
1、精確匹配:該匹配方式適用于統籌設計良好的系統,專案組能夠較好的歸類業務錯誤、分配錯誤碼,并在系統介面設計中在公有域有固定欄位回傳錯誤碼和錯誤資訊,此類系統直接采用錯誤碼庫中的錯誤碼與介面測驗結果模型中的錯誤碼匹配;
2、錯誤資訊模糊匹配:該匹配方式適用于能夠從固定欄位輸出錯誤資訊,但沒有固定欄位回傳錯誤碼或者錯誤碼定義不規范(如錯誤碼是中文資訊)的系統,此類系統錯誤碼和錯誤資訊由測驗人員自行定義,每類錯誤碼需對應設計匹配運算式,即一條正則運算式,若介面測驗結果模型中的錯誤資訊能匹配該正則運算式則歸為該類錯誤;
3、回傳報文模糊匹配:該匹配方式適用于介面設計不規范、無固定欄位回傳錯誤資訊的系統,此類系統錯誤碼和錯誤資訊由測驗人員自行定義,每類錯誤碼需對應設計匹配運算式,即一條正則運算式,若介面測驗結果模型中的回傳資訊能匹配該正則運算式則歸為該類錯誤,
在實際介面測驗中,由于被測系統配置錯誤、被測系統鋪底資料例外等問題而出現的錯誤并非本次測驗結果中需重點關注的內容,對于該類錯誤,將錯誤碼庫中的對應錯誤條目增加標志位,即納入非缺陷知識庫,
介面測驗結果歸類分析方法
基于介面測驗結果模型化和組織級的錯誤碼庫、非缺陷知識庫,本專利的方法及裝置將介面測驗的結果分類分析,輸出概要表和錯誤分類表,
概要表如下:

執行錯誤的交易將進一步處理為錯誤明細表,如下:

利用該分析結果,測驗人員可重點關注結果型別為“執行錯誤”的分類,確認為缺陷的應提交給開發人員修復;對于“執行錯誤非缺陷”的分類,應在解決對應問題后再次測驗相關介面,
用推理方式推匯出本發明的優點
本發明將不同系統、不同通訊方式、不同報文協議的介面測驗結果標準化為的統一資料模型,并依據組織級錯誤碼庫和非缺陷知識庫對標準化的測驗結果進行分類分析,大大降低測驗結果的人工分析作業量,避免大規模介面測驗因缺失高效結果分析能力而毫無意義的風險,
本發明設計的錯誤碼庫及配套的三種錯誤匹配方式,使得測驗人員可以靈活自主的為所測系統定制錯誤歸類識別方案,在商業銀行系統種類繁多、介面設計標準化程度不一的場景下,解決了介面測驗結果的錯誤識別問題,
本發明設計的非缺陷知識庫,使得測驗人員可以預設部分不關注的錯誤型別,以獲取重點更加突出的錯誤分析結果,輔助測驗人員更加高效的完成測驗活動,
本文提出了一種商業銀行組織級介面自動化測驗結果分析方法與裝置,高效輔助測驗人員對測驗結果進行分析處理,使得結果分析處理不再是介面自動化測驗組織級開展的瓶頸,
以上筆者的經歷更像一張橫向的知識網,創建了一個交流平臺 914172719 ,群內有各種技術同行交流、學習資料、面試經驗等,其中用到jenkins、docker、moutebank、python編程等,還需要花更多的精力去深入學習,當每項技能都能掌握到一定深度,才能稱為一個完整的知識體系,

最后: 可以關注公眾號:傷心的辣條 ! 進去有許多資料共享!資料都是面試時面試官必問的知識點,也包括了很多測驗行業常見知識,其中包括了有基礎知識、Linux必備、Shell、互聯網程式原理、Mysql資料庫、抓包工具專題、介面測驗工具、測驗進階-Python編程、Web自動化測驗、APP自動化測驗、介面自動化測驗、測驗高級持續集成、測驗架構開發測驗框架、性能測驗、安全測驗等,
如果我的博客對你有幫助、如果你喜歡我的博客內容,請 “點贊” “評論” “收藏” 一鍵三連哦!
好文推薦
轉行面試,跳槽面試,軟體測驗人員都必須知道的這幾種面試技巧!
面試經:一線城市搬磚!又面軟體測驗崗,5000就知足了…
面試官:作業三年,還來面初級測驗?恐怕你的軟體測驗工程師的頭銜要加雙引號…
什么樣的人適合從事軟體測驗作業?
那個準點下班的人,比我先升職了…
測驗崗反復跳槽,跳著跳著就跳沒了…
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/298063.html
標籤:其他
上一篇:撰寫一個并發性能測驗的小程式
