沈倩 雷蕾
摘要:當前各行各業(yè)都在推動數(shù)字化、智能化轉(zhuǎn)型,作為典型代表的中臺、RPA、AI智能等技術(shù)是目前研究的重點。這種大背景下,相對應(yīng)的測試技術(shù)、測試方法也應(yīng)積極進行探索和創(chuàng)新。本文根據(jù)中臺服務(wù)標準化測試特點,特別是面對服務(wù)發(fā)布后數(shù)量巨大的內(nèi)外部調(diào)用,同時還要兼顧上線前和上線后服務(wù)測試時間短等困難點,引入RPA+AI自動化測試技術(shù),讓自動化測試平臺化、產(chǎn)品化、智能化,提升中臺服務(wù)標準化測試效率和測試質(zhì)量,促進跨域能力的共享、拉通與復(fù)用。
關(guān)鍵詞:RPA;AI;自動化測試;中臺;服務(wù)標準化
一、背景及現(xiàn)狀
在云計算、大數(shù)據(jù)、人工智能等技術(shù)迅速發(fā)展帶來的數(shù)字化和智能化轉(zhuǎn)型浪潮中,中臺[1-2]服務(wù)架構(gòu)應(yīng)運而生。中臺是將互聯(lián)網(wǎng)技術(shù)和企業(yè)級能力結(jié)合,通過對企業(yè)信息化系統(tǒng)的架構(gòu)解耦、服務(wù)組件化、能力平臺化,將企業(yè)核心能力以共享服務(wù)中心在企業(yè)建立多維度共享體系。服務(wù)作為中臺的核心資產(chǎn)之一,不僅會被企業(yè)內(nèi)部各系統(tǒng)使用,還會作為資產(chǎn)對外發(fā)布。企業(yè)內(nèi)部和外部系統(tǒng)在使用服務(wù)資產(chǎn)過程中,需要按照服務(wù)標準化進行調(diào)用。為保障服務(wù)調(diào)用規(guī)范化,服務(wù)調(diào)用業(yè)務(wù)流程貫通性以及管理各服務(wù)調(diào)用情況、快速定位問題,中臺服務(wù)標準化測試成為上線前和上線后服務(wù)可用的重要抓手。本文根據(jù)中臺服務(wù)標準化測試特點,特別是面對服務(wù)發(fā)布后數(shù)量巨大的內(nèi)外部調(diào)用,同時還要兼顧上線前和上線后服務(wù)測試時間短等困難點,引入RPA[3]+AI自動化測試技術(shù)[4],讓自動化測試平臺化、產(chǎn)品化、智能化,提升中臺服務(wù)標準化測試效率和測試質(zhì)量。
二、方案研究
(一)中臺服務(wù)標準化測試特點
中臺服務(wù)標準化測試,是對業(yè)務(wù)操作活動過程中調(diào)用的中臺服務(wù)報文進行檢查,檢查內(nèi)容包括:服務(wù)英文名稱,服務(wù)中列出的“輸入?yún)?shù)”字段、“輸出參數(shù)”字段是否有遺漏、字段是否正確,字段的取值約束是否正確。該測試工作具有如下特點:
1.中臺服務(wù)標準化測試是基于規(guī)則的,按照服務(wù)提供方標準對外提供能力,需要自動化測試工具能支持服務(wù)標準化規(guī)范導(dǎo)入、業(yè)務(wù)參數(shù)提取、參數(shù)自動化比對功能。
2.中臺服務(wù)標準化測試具有重復(fù)性,測試的主要目的是確保中臺服務(wù)被企業(yè)內(nèi)、外部各系統(tǒng)正確調(diào)用及正常使用,服務(wù)發(fā)布后數(shù)量巨大的內(nèi)外部調(diào)用,需要自動化測試工具能支持測試用例編寫、測試任務(wù)分發(fā)、測試執(zhí)行過程可視化等功能。
3.中臺服務(wù)標準化測試具有測試時間短的特點,中臺主要為實現(xiàn)用戶業(yè)務(wù)的敏捷開發(fā),將服務(wù)搭積木式組合成用戶業(yè)務(wù)過程中,需要服務(wù)精準、快速的接入到業(yè)務(wù)流程中。因此需要自動化測試工具支撐服務(wù)上線前對接測試(又稱為系統(tǒng)聯(lián)調(diào)測試)以及上線后的業(yè)務(wù)驗證測試,需要自動化測試工具支持自助測試、用例執(zhí)行異常環(huán)節(jié)展示功能。
基于以上測試特點和測試需求,急需一套自動化測試產(chǎn)品或平臺來快速支撐中臺服務(wù)標準化測試工作,促進企業(yè)降本增效及實現(xiàn)數(shù)智化轉(zhuǎn)型升級。
(二)解決方案
RPA是機器人流程自動化Robotic Process Automation的縮寫,RPA可以通過模擬用戶在操作系統(tǒng)中的交互動作,自動執(zhí)行基于規(guī)則、重復(fù)的業(yè)務(wù),最終達到提升工作效率、減少人力成本[5]。RPA技術(shù)可在財務(wù)、人力、辦公、采購、IT運營、運維等多個業(yè)務(wù)場景實現(xiàn)自動化[6-7]。當前RPA技術(shù)用于自動化測試研究較少。
同時隨著現(xiàn)代人工智能AI技術(shù)的發(fā)展及應(yīng)用,將AI的強化學(xué)習、模仿學(xué)習,創(chuàng)造性地應(yīng)用到自動化測試領(lǐng)域,讓自動化測試更加智能和靈活,提升測試執(zhí)行效率和測試質(zhì)量,是自動化測試技術(shù)發(fā)展的趨勢。
因此本文集合中臺服務(wù)標準化測試特點及需求,將RPA+AI技術(shù)應(yīng)用到自動化測試產(chǎn)品,整體自動化測試產(chǎn)品由三部分組成:
1. AI自動化測試平臺:納管服務(wù)標準化測試的測試用例管理、測試任務(wù)管理、測試用例執(zhí)行、執(zhí)行結(jié)果管理四部分的功能,同時結(jié)合中臺服務(wù)標準化的測試作用及測試內(nèi)容,將強化學(xué)習、模仿學(xué)習等AI技術(shù)應(yīng)用于:(1)服務(wù)標準化規(guī)范導(dǎo)入;(2)測試用例編寫;(3)測試任務(wù)分發(fā);(4)業(yè)務(wù)參數(shù)、公參標志位剝離功能,實現(xiàn)提取業(yè)務(wù)參數(shù)、參數(shù)自動化比對;(5)用例執(zhí)行異常環(huán)節(jié)展示等功能。
2. RPA實現(xiàn)業(yè)務(wù)操作執(zhí)行:服務(wù)標準化測試報文由業(yè)務(wù)操作活動發(fā)起及調(diào)用,基于規(guī)則、重復(fù)的業(yè)務(wù)操作活動,可由RPA機器人根據(jù)腳本自動執(zhí)行。
3. RPA實現(xiàn)測試結(jié)果及配置信息自動上傳: 測試執(zhí)行結(jié)果上傳到測試平臺,由內(nèi)外部使用系統(tǒng)人工執(zhí)行。測試平臺配置規(guī)則復(fù)雜,學(xué)習成本高,測試現(xiàn)場耗時久。將常規(guī)、重復(fù)的上傳及配置活動由RPA機器人執(zhí)行,可提高測試執(zhí)行效率,減少人工投入引入的錯誤操作及調(diào)用方的學(xué)習成本。
三、組織開展及應(yīng)用
(一)AI自動化測試平臺
自動化測試平臺具備的通用測試用例管理、測試任務(wù)管理、測試用例執(zhí)行、執(zhí)行結(jié)果管理四部分的功能就不再贅述。重點闡述為支撐中臺服務(wù)標準化測試,平臺(后續(xù)自動化測試平臺簡稱為平臺)利用AI技術(shù)在服務(wù)標準化測試過程中的自動化測試改進。
1.非監(jiān)督學(xué)習提高服務(wù)標準化規(guī)范導(dǎo)入容錯率。
自動化測試平臺具備將服務(wù)標準化規(guī)范按照平臺導(dǎo)入模板導(dǎo)入,生成比對的基準。但需人工將規(guī)范中匹配平臺內(nèi)容割離出來。導(dǎo)入內(nèi)容不符合平臺定義或超出平臺定義范圍,平臺會報錯,導(dǎo)致導(dǎo)入失敗。平臺使用深度學(xué)習中的非監(jiān)督學(xué)習,所有的數(shù)據(jù)沒有標記,類別未知,讓平臺對參數(shù)類型、約束、取值之間的相似性進行分類以及聚類,從而提高平臺容錯率,實現(xiàn)服務(wù)標準化規(guī)范導(dǎo)入。后續(xù)會繼續(xù)研究將整個規(guī)范文檔進行輸入的方法,讓平臺提取關(guān)鍵內(nèi)容、自動識別,從而減少人工剝離內(nèi)容引入的錯誤。
2.知識庫及監(jiān)督學(xué)習提高測試用例編寫有效性。
通過分析自動化測試平臺用戶在使用平臺時的行為,建立行為分析及分類知識庫,對用戶實際測試行為進行智能分析,例如將平臺用戶角色、權(quán)限、行為包括測試類型、測試輸入關(guān)鍵字、測試用例、測試任務(wù)、測試執(zhí)行等進行分類及學(xué)習,通過平臺積累的大數(shù)據(jù)用戶行為,自動創(chuàng)建測試用例。
監(jiān)督學(xué)習:用戶根據(jù)創(chuàng)建的測試用例,對不符合需求的用例進行編輯或調(diào)整,讓模型用學(xué)到的特征,對新增的沒有分類、無標記的輸入或調(diào)整進行分類、貼標簽。這樣測試平臺就能記錄用戶修改用例行為,擴充行為分類和用例庫。通過持續(xù)大數(shù)據(jù)輸入、強化訓(xùn)練及學(xué)習,提高自動化測試平臺自動創(chuàng)建測試用例的準確性,提升目標用戶使用感知。
3.測試任務(wù)分發(fā)
測試任務(wù)分發(fā)也用到了AI技術(shù)的機器學(xué)習理論和遺傳算法理論,機器學(xué)習主要是設(shè)計和分析一些讓計算機可以自動”學(xué)習“的算法,利用計算機從數(shù)據(jù)中找出規(guī)律,從而應(yīng)用于對不確定場景的決策,最終讓數(shù)據(jù)變現(xiàn)。AI自動化測試平臺機器學(xué)習功能主要是基于用戶角色、權(quán)限、行為,進行測試用例和測試任務(wù)的綁定及自動分發(fā)。同時,自動化測試平臺也支持圖像識別技術(shù),平臺用戶將OA公文作為輸入提供給平臺,平臺自動識別系統(tǒng)關(guān)鍵字,對測試用例進行任務(wù)分發(fā)到識別系統(tǒng)。在任務(wù)分發(fā)成功后,同樣的存在用戶修正和反饋學(xué)習,提高任務(wù)分發(fā)準確性。
4.參數(shù)自動化比對
參數(shù)自動化比對屬于自動化測試平臺基礎(chǔ)功能。中臺服務(wù)標準化測試還需要平臺實現(xiàn):(1)業(yè)務(wù)參數(shù)、公參標志位剝離功能,實現(xiàn)按需提取相應(yīng)參數(shù),(2)參數(shù)的標準化校驗規(guī)則需支持廣泛設(shè)定,實現(xiàn)參數(shù)自動化比對。AI自動化測試平臺在功能(1)(2)上的實現(xiàn)同知識庫及監(jiān)督學(xué)習提高測試用例編寫有效性,因此不再進行贅述。
5.用例執(zhí)行異常環(huán)節(jié)展示功能
對于執(zhí)行通過的用例,展示各環(huán)節(jié)的名稱、預(yù)期結(jié)果、實際執(zhí)行結(jié)果、比對結(jié)果。對于測試用例異常環(huán)節(jié)的展示,可展示到的缺陷級別及內(nèi)容,涉及大數(shù)據(jù)分析和AI強化學(xué)習:(1)通過對各省各場景涉及的各業(yè)務(wù)系統(tǒng)的前臺報錯、后臺代碼報錯、智慧中臺各服務(wù)調(diào)用報錯等海量的錯誤類型進行收集;(2)通過大數(shù)據(jù)分析提供:報錯信息詞庫,測試平臺展示錯誤信息詞庫等;(3)通過AI平臺進行實際報錯和展示報錯的搜索、匹配、展示;(4)完成在測試平臺將缺陷內(nèi)容進行智能化的展示,協(xié)助運營運維人員或測試執(zhí)行人員精準定位問題。
(二)RPA實現(xiàn)業(yè)務(wù)操作執(zhí)行
通過對中臺服務(wù)標準化測試業(yè)務(wù)操作活動進行分析,梳理場景與執(zhí)行操作,對于規(guī)則、重復(fù)的業(yè)務(wù)操作活動,可由RPA機器人根據(jù)腳本自動執(zhí)行。
1.流程梳理及需求分析。
例如中臺業(yè)務(wù)場景———IOP運營業(yè)務(wù)辦理流程,可由RPA機器人實現(xiàn)功能測試執(zhí)行、中臺能力運營中心服務(wù)標準化報文撈取過程。用RPA設(shè)計器設(shè)計的主體流程如下:(1)登錄COC平臺,通過COC平臺進行標簽篩選及客戶群創(chuàng)建;(2)登錄IOP平臺,在平臺上進行營銷活動策略新增,其包括的子操作:選產(chǎn)品、選客戶,選渠道、配置運營位、廣告圖片素材、提交營銷活動;(3)進行營銷活動策略審批;(4)業(yè)務(wù)操作活動完結(jié)后,登錄中臺能力運營中心前臺或者后臺;(5)在前臺或后臺進行服務(wù)標準化報文撈??;(6)把撈取的報文保存到對應(yīng)測試執(zhí)行模板下。
2.流程開發(fā)及測試。
通過業(yè)務(wù)流程梳理,整理該流程目前需要參數(shù)化配置的系統(tǒng)參數(shù),例如:平臺地址、篩選條件、篩選產(chǎn)品等。基于流程梳理及需求分析,確認目前RPA平臺組件及模板是否滿足,確認是基于組件進行開發(fā)還是基于其他項目分享的模板進行開發(fā)。在RPA平臺組提供技術(shù)支撐前提下,利用CMIPAStudioSetup-v1.2.1.1設(shè)計器、rpa_windows64_v1.2.4_Final機器人,進行測試執(zhí)行流程模板開發(fā)。對于提交的流程源碼進行機器人執(zhí)行操作測試,并進行多終端、多瀏覽器等環(huán)境反復(fù)的調(diào)整和試運行,確保流程的高兼容性。
3.流程發(fā)布及部署實施。
流程審計通過后,可在RPA流程控制中心進行發(fā)布和共享。設(shè)置模板共享權(quán)限后,有共同測試需求的內(nèi)外部系統(tǒng)可直接使用該流程進行開發(fā)或控制機器人運行。部署實施包括機器人部署、機器人授權(quán)、機器人部署主機與RPA控制中心網(wǎng)絡(luò)策略開通、控制中心作業(yè)計劃制定。確認環(huán)境都具備后,即可定時或隨時執(zhí)行機器人相關(guān)流程模板,實現(xiàn)測試執(zhí)行的機器人流程自動化。
4.流程更新及維護。
由于前端界面UI變化,已編寫好的RPA流程模板會需要人工進行變更及維護,利用RPA平臺的OCR技術(shù),可提前進行檢測,當發(fā)現(xiàn)流程模板UI變化以后,人工智能自動地去進行識別學(xué)習,進行自我修復(fù),以保證RPA功能流程模板能穩(wěn)定的運行。
(三)RPA實現(xiàn)結(jié)果上傳
RPA實現(xiàn)測試執(zhí)行是基于場景的訴求,在AI自動化測試平臺實現(xiàn)結(jié)果上傳過程中,常規(guī)、重復(fù)的上傳及配置活動也可以用RPA來實現(xiàn)。該過程流程模板開發(fā)及部署實施等過程與測試執(zhí)行過程一致,不同點在于機器人執(zhí)行操作。該流程包括打開瀏覽器、讀取參數(shù)配置文件、循環(huán)分支等,同時對于不支持的組件進行JAVA代碼開發(fā),最終實現(xiàn)2個不同的機器人讀取參數(shù)配置文件及上傳測試執(zhí)行結(jié)果的流程。用設(shè)計器設(shè)計的主體流程如下:(1)省側(cè)用機器人登錄集中化測試平臺;(2)跳轉(zhuǎn)到聯(lián)調(diào)測試平臺;(3)找到對應(yīng)的任務(wù)和用例;(4)上傳參數(shù)和文件;(5)點擊執(zhí)行按鈕。
四、成效及下一步發(fā)展
本文所介紹的RPA+AI自動化測試產(chǎn)品通過融合AI自動化測試技術(shù),率先形成的服務(wù)測試產(chǎn)品化功能,在中臺項目中使用:一方面響應(yīng)了測試產(chǎn)品化的行業(yè)推進路線;另一方面,目前各行業(yè)都提出構(gòu)建中臺,以此助力企業(yè)產(chǎn)品創(chuàng)新、流程優(yōu)化和轉(zhuǎn)型發(fā)展,AI自動化測試平臺可根據(jù)需求,通過簡單的參數(shù)配置滿足不同的服務(wù)標準化要求,促進跨域能力的共享、拉通與復(fù)用。
經(jīng)過RPA+AI自動化測試產(chǎn)品支撐和報文格式兼容性測試,中臺服務(wù)標準化測試自動化實現(xiàn)率從產(chǎn)品建設(shè)前的0%,到正式驗收時的78.3%。測試執(zhí)行效率從3.99人月降低到2.225人月,效率提升 44.2%。目前整套RPA+AI自動化測試產(chǎn)品,已在2020、2021中臺服務(wù)標準化測試執(zhí)行中應(yīng)用,覆蓋到58個場景、47288條用例,并將在2022年中臺服務(wù)標準化測試工作中繼續(xù)發(fā)揮降本增效的作用。
隨著數(shù)字化轉(zhuǎn)型的深入,RPA+AI將推動全數(shù)字化時代到來。文章所介紹的RPA+AI自動化測試技術(shù)在中臺服務(wù)標準化中的研究及應(yīng)用,是在中臺建設(shè)大背景下進行的大膽嘗試及創(chuàng)新,一方面該部分的能力需要繼續(xù)推廣和拓展;另一方面,在運營商數(shù)智化轉(zhuǎn)型升級、大背景下,相對應(yīng)的測試也應(yīng)積極探索創(chuàng)新,朝著測試平臺化、自動化、產(chǎn)品化、智能化的行業(yè)發(fā)展趨勢推進。
作者單位:沈倩? ? 雷蕾? ? 中移信息技術(shù)有限公司 聊城市分公司
參? 考? 文? 獻
[1] 何菲. 中臺戰(zhàn)略能否重構(gòu)阿里[J]. IT經(jīng)理世界, 2016(06):21-23.
[2] 馮曉娜,雷會鋒,王璐.基于數(shù)據(jù)中臺視角的企業(yè)數(shù)字化轉(zhuǎn)型探析[J]. 航空財會. 2021(01):41-44.
[3]? Y.-W. Ma, D.-P. Lin, S.-J. Chen, H.-Y. Chu and J.-L. Chen, “System design and development for robotic process automation”, Proc. IEEE Int. Conf. Smart Cloud (SmartCloud), pp. 187-189, Dec. 2019.
[4] 騰訊互動娛樂事業(yè)群TuringLab.AI自動化測試:技術(shù)原理/平臺搭建與工程實踐[M],機械工業(yè)出版社,2020.
[5] P. Desai, “Robotic process automation: RPA pre-requisite and pivotal points: Special issue: Special issue: IAISCT(SS4)”, Proc. Int. Conf. Smart Technol. Comput. Electr. Electron. (ICSTCEE), pp. 446-451, Oct. 2020.
[6] 19.X. Ling, M. Gao and D. Wang, “Intelligent document processing based on RPA and machine learning”, Proc. Chin. Autom. Congr. (CAC), pp. 1349-1353, Nov. 2020.
[7] J. G. Enríquez, A. Jiménez-Ramírez, F. J. Domínguez-Mayo and J. A. García-García, “Robotic process automation: A scientific and industrial systematic mapping study”, IEEE Access, vol. 8, pp. 39113-39129, 2020.