結(jié)合人工智能(AI)技術(shù)、自動(dòng)化測(cè)試技術(shù)的進(jìn)步以及介方信息規(guī)?;浖_(kāi)發(fā)及交付的需求,公司內(nèi)部成立了以數(shù)據(jù)驅(qū)動(dòng)的智能化軟件測(cè)試項(xiàng)目。聚焦于本司軟件研發(fā)、測(cè)試、交付過(guò)程中的痛點(diǎn),采用人工智能、數(shù)據(jù)中間件等技術(shù)構(gòu)建全數(shù)字化的嵌入式軟件智能測(cè)試平臺(tái),促進(jìn)企業(yè)軟件測(cè)試向數(shù)字化、智能化轉(zhuǎn)型。
該智能化軟件測(cè)試平臺(tái)可完成軟件的單元測(cè)試、集成、回歸等類別的測(cè)試任務(wù),測(cè)試的對(duì)象涵蓋本公司所有的軟件產(chǎn)品,包括核心框架、中間件、硬件抽象層、操作系統(tǒng)等。測(cè)試用例庫(kù)可以無(wú)限擴(kuò)展,目前已支持2000+測(cè)試用例,可實(shí)現(xiàn)對(duì)軟件產(chǎn)品的功能、性能、標(biāo)準(zhǔn)符合性等類型的測(cè)試項(xiàng)目。項(xiàng)目運(yùn)營(yíng)6個(gè)月,已經(jīng)順利完成5個(gè)軟件項(xiàng)目的順利交付,將項(xiàng)目交付效率提升了40%,客戶滿意度大大提高。
通過(guò)實(shí)戰(zhàn)項(xiàng)目落地,公司成立了一個(gè)獨(dú)立的智能化測(cè)試平臺(tái)團(tuán)隊(duì),負(fù)責(zé)測(cè)試項(xiàng)目實(shí)施及測(cè)試平臺(tái)的運(yùn)維工作。將公司的測(cè)試成本節(jié)省了70%?;陧?xiàng)目成功的實(shí)踐,現(xiàn)已將該智能化測(cè)試平臺(tái)作為一個(gè)標(biāo)準(zhǔn)化產(chǎn)品推向市場(chǎng)。
一、實(shí)施背景及目標(biāo)
國(guó)內(nèi)“十四五”期間開(kāi)始大規(guī)模列裝下一代智能通信裝備,并且強(qiáng)制要求采用基于SCA的智能可重構(gòu)操作系統(tǒng)。由預(yù)研到型研的轉(zhuǎn)變,一方面要求軟件產(chǎn)品能夠快速交付;另一方面要求軟件產(chǎn)品的質(zhì)量能滿足軍標(biāo)要求。
大規(guī)模嵌入式軟件產(chǎn)品在面向不同的硬件平臺(tái)時(shí),需要一定程度的裁剪、重配置、功能定制及性能優(yōu)化。一個(gè)軟件項(xiàng)目的交付會(huì)涉及研發(fā)、測(cè)試、質(zhì)量等各個(gè)環(huán)節(jié),傳統(tǒng)的軟件測(cè)試方式不僅需要大量的測(cè)試工程師,而且不能保證測(cè)試質(zhì)量和效率。針對(duì)以上問(wèn)題,采用開(kāi)放式的軟硬件架構(gòu)構(gòu)建嵌入式軟件測(cè)試平臺(tái),通過(guò)統(tǒng)一的數(shù)據(jù)模型打通不同測(cè)試分系統(tǒng),實(shí)現(xiàn)全流程的數(shù)字化,使用AI技術(shù)實(shí)現(xiàn)測(cè)試計(jì)劃自動(dòng)生成、測(cè)試報(bào)告分析等。
二、建設(shè)內(nèi)容
2.1全流程智能化測(cè)試平臺(tái)
為了實(shí)現(xiàn)本司軟件產(chǎn)品的測(cè)試流程的標(biāo)準(zhǔn)化、測(cè)試過(guò)程的自動(dòng)化、數(shù)據(jù)分析的智能化,構(gòu)建圖一所示分布式測(cè)試硬件環(huán)境。該環(huán)境由綜合管理平臺(tái)、可視化操作平臺(tái)、軟無(wú)基型平臺(tái)、測(cè)試儀器四部分構(gòu)成,每個(gè)部分之間通過(guò)交換機(jī)或者硬件接口直連,具體描述如下:
2.1.1綜合管理平臺(tái)
綜合管理平臺(tái)是智能化測(cè)試系統(tǒng)的“大腦”,提供測(cè)試工程管理、用例管理、測(cè)試計(jì)劃生成、測(cè)試數(shù)據(jù)管理及報(bào)告生成等功能。該平臺(tái)由專人管理,管理整個(gè)項(xiàng)目的全生命周期,從導(dǎo)入廠家待測(cè)設(shè)備的硬件信息到生成測(cè)試計(jì)劃,以及監(jiān)控項(xiàng)目的執(zhí)行進(jìn)度、測(cè)試報(bào)告生成。該平臺(tái)的硬件部分是一個(gè)高性能工作站,軟件部分是綜合管理軟件,并綜合管理軟件是整個(gè)智能化測(cè)試系統(tǒng)的核心,作為測(cè)試后臺(tái),控制具體功能測(cè)試軟件完成具體測(cè)試任務(wù)。
2.1.2可視化操作平臺(tái)
可視化操作平臺(tái)提供可視化的測(cè)試界面,該平臺(tái)由測(cè)試計(jì)算機(jī)和功能測(cè)試軟件構(gòu)成。按照功能劃分,可以分為操作系統(tǒng)測(cè)試平臺(tái)、傳輸機(jī)制測(cè)試平臺(tái)、核心框架測(cè)試平臺(tái)、硬件抽象層測(cè)試平臺(tái)及平臺(tái)適配性測(cè)試平臺(tái),分布式執(zhí)行不同的測(cè)試任務(wù)??梢暬僮髌脚_(tái)在常規(guī)測(cè)試模式下,必須向綜合管理平臺(tái)請(qǐng)求測(cè)試計(jì)劃及更新測(cè)試用例,然后執(zhí)行測(cè)試任務(wù),最后將測(cè)試結(jié)果上傳至綜合管理平臺(tái)??紤]到適配的靈活性,測(cè)試平臺(tái)提供調(diào)試模式,可以完成測(cè)試用例的適配。
2.1.3軟無(wú)基型平臺(tái)
軟無(wú)基型平臺(tái)是被測(cè)試對(duì)象,分為高集成式、一體式、嵌入式及分體式等四種類型。每個(gè)基型平臺(tái)軟件、硬件的設(shè)計(jì)要符合性SCA標(biāo)準(zhǔn),其平臺(tái)軟件操作系統(tǒng)、傳輸機(jī)制、核心框架及硬件抽象層。測(cè)試廠家進(jìn)行符合性測(cè)試,需將基型平臺(tái)的軟硬件信息(設(shè)備類型、關(guān)鍵器件、操作系統(tǒng)、IP地址、邏輯地址等)上報(bào)給測(cè)試管理人員進(jìn)行登記。
2.1.4測(cè)試儀器
測(cè)試儀器是輔助符合性測(cè)試系統(tǒng)完成測(cè)試任務(wù)的測(cè)量設(shè)備,包括直流電源、頻譜儀、示波器、矢量信號(hào)源、功率計(jì)、矢量信號(hào)分析儀、時(shí)間測(cè)試平臺(tái)等。每個(gè)測(cè)試儀器的功能簡(jiǎn)要描述如下:
●直流電源:為軟無(wú)基型平臺(tái)提供電源支撐,提供多通道多種輸出電壓。不僅能滿足多臺(tái)設(shè)備的需要,而且還要滿足大功率設(shè)備的電源要求。
●頻譜儀:頻譜儀連接被測(cè)設(shè)備的射頻接口,輔助完成波形加卸載、RFC硬件抽象層接口等項(xiàng)目的測(cè)試。
●示波器:示波器用于監(jiān)測(cè)被測(cè)設(shè)備的高速、低俗接口,輔助完成波形加卸載、硬件抽象層等項(xiàng)目的測(cè)試。
●矢量信號(hào)源:矢量信號(hào)源用于連接被測(cè)設(shè)備的射頻接口,輔助RFC硬件抽象層接口項(xiàng)目的測(cè)試。
●射頻功率計(jì):矢量信號(hào)源用于連接被測(cè)設(shè)備的射頻接口,輔助RFC硬件抽象層接口項(xiàng)目的測(cè)試。
●矢量信號(hào)分析儀:矢量信號(hào)源用于連接被測(cè)設(shè)備的射頻接口,輔助RFC硬件抽象層接口項(xiàng)目的測(cè)試。
2.2數(shù)據(jù)驅(qū)動(dòng)的軟件測(cè)試過(guò)程
2.2.1軟件測(cè)試環(huán)境
圖一:一體式智能化軟件測(cè)試平臺(tái)
如上圖所示,智能化軟件測(cè)試環(huán)境是一個(gè)總分式的結(jié)構(gòu),綜合管理平臺(tái)是整個(gè)測(cè)試系統(tǒng)的“大腦”,負(fù)責(zé)測(cè)試項(xiàng)目管理、用例庫(kù)管理、測(cè)試數(shù)據(jù)管理及執(zhí)行監(jiān)控。綜合管理平臺(tái)通過(guò)傳輸機(jī)制與各個(gè)測(cè)試軟件進(jìn)行通信,形成一個(gè)分布式系統(tǒng)。各個(gè)測(cè)試軟件請(qǐng)求綜合管理平臺(tái)下發(fā)測(cè)試計(jì)劃,執(zhí)行測(cè)試完成,并將測(cè)試結(jié)果上傳到綜合測(cè)試管理,實(shí)現(xiàn)一個(gè)完整的測(cè)試閉環(huán)。
測(cè)試用例庫(kù)是符合性測(cè)試系統(tǒng)最為核心的構(gòu)件,本系統(tǒng)將測(cè)試用例與測(cè)試軟件實(shí)現(xiàn)解耦,測(cè)試用例可配置、可升級(jí),而測(cè)試軟件采用插件式的開(kāi)放架構(gòu),不同的測(cè)試任務(wù)配置不同的測(cè)試用例。
為了方便測(cè)試的任務(wù)并行開(kāi)展,提高測(cè)試效率,將測(cè)試軟件設(shè)計(jì)為五個(gè)獨(dú)立的測(cè)試操作軟件:核心框架測(cè)試軟件、傳輸機(jī)制測(cè)試軟件、操作系統(tǒng)測(cè)試軟件、硬件抽象層測(cè)試軟件及平臺(tái)適配性測(cè)試軟件。每個(gè)測(cè)試軟件可以執(zhí)行不同的測(cè)試任務(wù),在執(zhí)行測(cè)試任務(wù)的過(guò)程中,測(cè)試用例配置、測(cè)試過(guò)程、測(cè)試結(jié)果都由后端的綜合管理軟件進(jìn)行管控,保證測(cè)試流程的數(shù)據(jù)私密性和公正性。
2.2.2自動(dòng)化軟件測(cè)試流程
測(cè)試的依據(jù)是SCA標(biāo)準(zhǔn)規(guī)范集,包括操作系統(tǒng)子規(guī)范、傳輸機(jī)制子規(guī)范、核心框架子規(guī)范、MAHL子規(guī)范、MOCB子規(guī)范。根據(jù)這些標(biāo)準(zhǔn)規(guī)范設(shè)計(jì)測(cè)試大綱,定義結(jié)果的判決標(biāo)準(zhǔn)。在測(cè)試系統(tǒng)的實(shí)現(xiàn)方面,將測(cè)試用例與測(cè)試環(huán)境及工具分離,測(cè)試用例嚴(yán)格按照測(cè)試大綱設(shè)計(jì),保證符合SCA標(biāo)準(zhǔn)規(guī)范。測(cè)試環(huán)境及測(cè)試工具采用開(kāi)放式架構(gòu)設(shè)計(jì),功能可定制,適配不同的測(cè)試需求。
通過(guò)實(shí)際的測(cè)試結(jié)果與測(cè)試大綱定義的期望結(jié)果進(jìn)行比對(duì),生成不符合、基本符合、完全符合等測(cè)試結(jié)論。對(duì)于測(cè)試過(guò)程中,出現(xiàn)不可恢復(fù)故障,無(wú)法完成測(cè)試任務(wù)的,則終止測(cè)試。
圖二:數(shù)據(jù)驅(qū)動(dòng)的軟件測(cè)試流程
如上圖所示,SCA符合性測(cè)試流程共分為適配階段、測(cè)試階段及分析總結(jié)階段,本方案所構(gòu)建的符合性測(cè)試系統(tǒng)涵蓋了測(cè)試項(xiàng)目創(chuàng)建、執(zhí)行測(cè)試到測(cè)試結(jié)果分析、報(bào)告生成整個(gè)測(cè)試周期。
1)適配階段主要完成項(xiàng)目創(chuàng)建到測(cè)試計(jì)劃的生成,需要測(cè)試廠家和測(cè)試管理人員的共同參與。
2)測(cè)試階段的主要工作是執(zhí)行各個(gè)測(cè)試任務(wù),并把測(cè)試結(jié)果上傳給綜合管理平臺(tái)。
3)分析總結(jié)階段主要完成數(shù)據(jù)的統(tǒng)計(jì)及分析,生成測(cè)試報(bào)告,給出符合性測(cè)試結(jié)論。在關(guān)閉項(xiàng)目之前對(duì)項(xiàng)目工程的數(shù)據(jù)進(jìn)行備份,以便于復(fù)盤和查詢。
三、實(shí)施效果
截止目前,數(shù)據(jù)驅(qū)動(dòng)的智能化軟件測(cè)試項(xiàng)目已經(jīng)在公司5個(gè)項(xiàng)目上落地,并保障了項(xiàng)目順利交付。應(yīng)用對(duì)象已覆蓋我司核心框架、中間件、集成開(kāi)發(fā)環(huán)境等全部核心軟件產(chǎn)品?,F(xiàn)已經(jīng)將該智能化軟件測(cè)試平臺(tái)打造成一個(gè)標(biāo)準(zhǔn)化產(chǎn)品,應(yīng)用到客戶現(xiàn)場(chǎng),凸顯了我司產(chǎn)品在業(yè)內(nèi)差異化競(jìng)爭(zhēng)優(yōu)勢(shì)。具體的實(shí)施效果如下
1、交付效率:
軟件產(chǎn)品交付效率平均提升了40%,在不增加研發(fā)及測(cè)試人員的情況下,完成了更多的項(xiàng)目交付。
2、產(chǎn)品質(zhì)量:
客戶請(qǐng)求現(xiàn)場(chǎng)解決問(wèn)題的次數(shù)下降了85%,降低到歷史最低點(diǎn),客戶滿意度持續(xù)上升。
3、測(cè)試成本:
測(cè)試平臺(tái)一次投入,持續(xù)升級(jí)。測(cè)試的用例及方法得到最大化的復(fù)用,單個(gè)項(xiàng)目的測(cè)試成本平均降低了70%。
4、產(chǎn)品性能:
隨著測(cè)試用例庫(kù)的不斷豐富,對(duì)軟件產(chǎn)品的測(cè)試不僅更深而且更廣,測(cè)試出一些產(chǎn)品以前未被測(cè)試bug,提升了本司軟件產(chǎn)品在行業(yè)內(nèi)的競(jìng)爭(zhēng)力。