智能測(cè)試的三個(gè)階段
該階段的信心來(lái)源于兩個(gè)軟件測(cè)試領(lǐng)域的現(xiàn)實(shí):1、不是所有的軟件變更行為都會(huì)帶來(lái)風(fēng)險(xiǎn);2、不是所有軟件測(cè)試活動(dòng)都能揭露風(fēng)險(xiǎn)。因此在軟件測(cè)試領(lǐng)域有極大的資源浪費(fèi)和問(wèn)題露出,促使我們極力探索感知智能。
該階段利用軟件過(guò)程產(chǎn)生的行為數(shù)據(jù)+更高階的算法+機(jī)器算力,能夠像人一樣感知風(fēng)險(xiǎn)并做出決策,主要目的希望能夠像人一樣感知、識(shí)別風(fēng)險(xiǎn)并做出決策以更高效的指導(dǎo)質(zhì)量活動(dòng),在該階段的探索有:視覺技術(shù)在前端自動(dòng)化用例撰寫、去彈窗、UIDIFF等領(lǐng)域的應(yīng)用;基于風(fēng)險(xiǎn)預(yù)估貝葉斯+catboost的用例推薦技術(shù)實(shí)現(xiàn)用例推薦比從50%到10%的提升;基于LR模型預(yù)估項(xiàng)目風(fēng)險(xiǎn)的自主測(cè)試系統(tǒng)實(shí)現(xiàn)70%低風(fēng)險(xiǎn)無(wú)人干預(yù)上線;基于深度學(xué)習(xí)的白盒代碼缺陷檢測(cè)等。這些場(chǎng)景和技術(shù)應(yīng)用的突破證明了AI在軟件測(cè)試完全可以替代人去感知、識(shí)別風(fēng)險(xiǎn),并決策質(zhì)量活動(dòng),使得軟件測(cè)試活動(dòng)足夠高效。百度智能測(cè)試目前主要在該階段進(jìn)行持續(xù)探索。
該階段是感知智能的延續(xù),感知智能階段可以感知識(shí)別風(fēng)險(xiǎn)并決策要付諸何種質(zhì)量活動(dòng),但該質(zhì)量活動(dòng)仍然可能是由人完成,如用例撰寫、場(chǎng)景設(shè)計(jì)、人工點(diǎn)擊等,認(rèn)知智能寄希望在感知到風(fēng)險(xiǎn)后,能夠由機(jī)器做出實(shí)際反應(yīng)去揭露風(fēng)險(xiǎn),在該階段我們探索了基于AST的智能異常單元測(cè)試代碼生成技術(shù)實(shí)現(xiàn)C++的異常單測(cè)召回core、死循環(huán)等問(wèn)題、基于UCB優(yōu)先級(jí)策略遍歷技術(shù)實(shí)現(xiàn)單位時(shí)間內(nèi)更高的頁(yè)面覆蓋、任務(wù)失敗智能定位技術(shù)降低人工排查成本、交付持續(xù)集成流水線自愈技術(shù)等場(chǎng)景;該階段目前還剛剛起步,但我們相信隨著AI技術(shù)的不斷成熟和創(chuàng)新,認(rèn)知智能階段也會(huì)迎來(lái)大爆發(fā)。
