星云精準(zhǔn)測(cè)試有力提升金融復(fù)雜系統(tǒng)的測(cè)試能效

隨著國(guó)內(nèi)大數(shù)據(jù)戴而、云計(jì)算凑术、人工智能等新技術(shù)的發(fā)展,銀行業(yè)的前中后臺(tái)正面臨著全面改造所意,金融科技是業(yè)務(wù)轉(zhuǎn)型發(fā)展的一個(gè)核心發(fā)力點(diǎn)淮逊。金融行業(yè)信息系統(tǒng)集中度高催首、規(guī)模龐大、多系統(tǒng)之間關(guān)聯(lián)性強(qiáng)泄鹏、業(yè)務(wù)復(fù)雜郎任、需求變化快,另外各種新舊系統(tǒng)錯(cuò)綜交互备籽,軟件質(zhì)量控制難度異常復(fù)雜舶治。通過技術(shù)手段精準(zhǔn)地追溯每一個(gè)數(shù)據(jù)路線,有效實(shí)現(xiàn)信息系統(tǒng)的高可靠性和易維護(hù)性车猬,是金融業(yè)界共同的目標(biāo)霉猛。

一、傳統(tǒng)測(cè)試的局限

目前珠闰,在大部分金融機(jī)構(gòu)中惜浅,主流的功能測(cè)試方法是黑盒測(cè)試輔之以一定量的自動(dòng)化測(cè)試。由于自動(dòng)化測(cè)試用例的維護(hù)問題較多伏嗜,黑盒手工(功能)測(cè)試依然是主流坛悉。它有很多經(jīng)典方法,如等價(jià)類阅仔、正交用例設(shè)計(jì)法以及近些年流行的探索性測(cè)試等吹散。因黑盒測(cè)試方法總體依賴于業(yè)務(wù)經(jīng)驗(yàn)弧械,以及一定的測(cè)試“靈感”和臨場(chǎng)發(fā)揮的“算力”八酒,隨著金融軟件復(fù)雜性和迭代速度的不斷加快、軟件系統(tǒng)組合路徑膨脹等問題刃唐,人腦的推算力顯然遠(yuǎn)遠(yuǎn)跟不上了羞迷。即使很優(yōu)秀的測(cè)試人員,也會(huì)因?yàn)闋顟B(tài)問題而導(dǎo)致測(cè)試用例設(shè)計(jì)水準(zhǔn)出現(xiàn)波動(dòng)画饥。后續(xù)測(cè)試覆蓋不充分性日益凸顯衔瓮,剩余至少30%以上的漏測(cè)點(diǎn)。而白盒測(cè)試工具抖甘,因?yàn)榧夹g(shù)沒有跟上敏捷迭代的開發(fā)場(chǎng)景热鞍,目前在金融企業(yè)幾乎很少在實(shí)際中應(yīng)用。

二衔彻、精準(zhǔn)測(cè)試概念的提出

如何快速定位金融大型信息系統(tǒng)的測(cè)試死角薇宠,用“可量化”和“可視化”的分析與測(cè)試手段,有效地發(fā)現(xiàn)程序深層隱藏的缺陷艰额、提高信息系統(tǒng)投產(chǎn)質(zhì)量澄港、降低投產(chǎn)風(fēng)險(xiǎn)、增強(qiáng)投產(chǎn)信心柄沮,金融業(yè)甚至軟件業(yè)均在尋求最佳解決方案回梧。

精準(zhǔn)測(cè)試方法體系废岂,是近年來業(yè)界頗為關(guān)注的新測(cè)試技術(shù)體系。它立足于“系統(tǒng)級(jí)”測(cè)試狱意,建立了業(yè)務(wù)功能與代碼之間的映射與追溯關(guān)系湖苞,在代碼優(yōu)化、快速定位代碼缺陷髓涯、確保關(guān)鍵代碼的測(cè)試覆蓋袒啼、精準(zhǔn)回歸等方面表現(xiàn)突出。為金融信息系統(tǒng)實(shí)施高效管理纬纪,提供了質(zhì)量抓手蚓再。

三、 精準(zhǔn)測(cè)試的關(guān)鍵技術(shù)

1. 精準(zhǔn)測(cè)試的核心技術(shù)

??精準(zhǔn)測(cè)試最底層的核心技術(shù):“一種基于用例與源碼雙向追溯的測(cè)試裝置及方量子糾纏的形象類比:如常見的金融轉(zhuǎn)賬包各、手機(jī)拍照摘仅、機(jī)器人控制等指令,每個(gè)操作都有與之對(duì)應(yīng)的代碼问畅,他們之間如同兩個(gè)糾纏在一起的粒子娃属,具備強(qiáng)關(guān)聯(lián)性。一個(gè)發(fā)生變化护姆,另一個(gè)必定發(fā)生相應(yīng)變化矾端。星云精準(zhǔn)測(cè)試將功能用例和對(duì)應(yīng)的代碼之間實(shí)現(xiàn)了精準(zhǔn)無誤的追溯路線可視化,徹底解決了“黑盒”的難題卵皂。在此核心技術(shù)基礎(chǔ)上秩铆,諸如:“回歸測(cè)試用例的自動(dòng)選取”、“覆蓋率可視化”灯变、“智能缺陷定位”殴玛、“聚類分析”等精準(zhǔn)測(cè)試的高級(jí)功能得以充分實(shí)現(xiàn)。

image

?????????????? 圖 雙向追溯(正向)-測(cè)試用例追溯到代碼

??由于優(yōu)秀的內(nèi)核設(shè)計(jì)添祸,星云精準(zhǔn)測(cè)試可以輕松應(yīng)用在數(shù)億行的超大型復(fù)雜應(yīng)用上著隆,在建立測(cè)試用例媚送、代碼安寺、模塊之間精準(zhǔn)可視追溯機(jī)制的同時(shí)勺远,瞬間可將海量數(shù)據(jù)實(shí)時(shí)采集并存儲(chǔ)起來,用于后續(xù)測(cè)試大數(shù)據(jù)的分析和運(yùn)算上耙替。整體過程對(duì)原有系統(tǒng)性能亚侠,不產(chǎn)生干擾。

2. 高度智能化的靜默式落地方案

??星云精準(zhǔn)測(cè)試并不改變現(xiàn)有的測(cè)試流程和團(tuán)隊(duì)組成林艘,它巧妙地使黑盒測(cè)試無縫對(duì)接到精準(zhǔn)測(cè)試體系盖奈,快速實(shí)現(xiàn)提升測(cè)試效能比的剛需。測(cè)試工程師打開測(cè)試用例的Excel表格狐援、執(zhí)行點(diǎn)擊用例钢坦,即可通過VBA技術(shù)究孕,直接調(diào)用星云精準(zhǔn)測(cè)試的后臺(tái)接口,再附加一整套深入應(yīng)用后臺(tái)執(zhí)行線程的用戶標(biāo)簽技術(shù)爹凹,就可以將用例和代碼關(guān)聯(lián)和分離出來(分離是指類似J2EE服務(wù)端后臺(tái)應(yīng)用)厨诸。在對(duì)外提供多用戶并發(fā)訪問的情況下,可分離出每個(gè)用戶執(zhí)行的用例所對(duì)應(yīng)的代碼禾酱。測(cè)試者在整個(gè)過程中微酬,幾乎不需要增加額外工作量。

3. 精準(zhǔn)可信的測(cè)試數(shù)據(jù)記錄過程

??傳統(tǒng)測(cè)試有點(diǎn)像挖礦藏颤陶,主要依賴測(cè)試用例執(zhí)行數(shù)颗管、時(shí)長(zhǎng)、bug的數(shù)量等外在維度進(jìn)行衡量滓走,缺陷是未知數(shù)垦江,結(jié)果不那么具備公信力。精準(zhǔn)測(cè)試是傳統(tǒng)測(cè)試走向可信測(cè)試的一個(gè)最好的技術(shù)手段搅方。它的所有測(cè)試數(shù)據(jù)均是在測(cè)試執(zhí)行過程中比吭,由軟件自動(dòng)分析并錄入的底層代碼運(yùn)行原生數(shù)據(jù)。由于用例和執(zhí)行代碼之間信息被完整跟蹤姨涡,并且細(xì)分到測(cè)試用例級(jí)別衩藤,因此整個(gè)測(cè)試數(shù)據(jù)都可以在代碼層面可視化出來,人工無法介入修改涛漂。它真實(shí)再現(xiàn)測(cè)試現(xiàn)場(chǎng)情況赏表,結(jié)果可直接用于測(cè)試的過程管理和實(shí)效分析。從技術(shù)上確保所有數(shù)據(jù)精準(zhǔn)無篡改怖喻。這一舉措底哗,使測(cè)試的衡量點(diǎn)回歸到計(jì)算機(jī)程序的本質(zhì)-“代碼”上來岁诉。

四锚沸、精準(zhǔn)測(cè)試的應(yīng)用實(shí)踐

??精準(zhǔn)測(cè)試的用例與執(zhí)行代碼的強(qiáng)追溯性,為采集到的海量測(cè)試數(shù)據(jù)實(shí)現(xiàn)精準(zhǔn)度量以及全面涕癣、多維度的測(cè)試分析哗蜈,打下了堅(jiān)實(shí)基礎(chǔ)。測(cè)試管理從相對(duì)單一的覆蓋率考量視角坠韩,擴(kuò)展到多剖面的智能分析距潘。由于篇幅限制,本文選擇兩個(gè)主要功能點(diǎn)做一介紹:

1只搁、企業(yè)級(jí)覆蓋率方面的創(chuàng)新

??測(cè)試覆蓋率是測(cè)試界公認(rèn)的測(cè)試結(jié)項(xiàng)可用量化指標(biāo)音比。在敏捷迭代場(chǎng)景下,由于新版本快速發(fā)布氢惋,代碼變更頻繁洞翩,本應(yīng)在一個(gè)版本上分析的覆蓋數(shù)據(jù)稽犁,分布到了數(shù)個(gè)代碼結(jié)構(gòu)不一樣的程序版本上,因此傳統(tǒng)白盒覆蓋率的統(tǒng)計(jì)方法和參考意義基本上都失效了骚亿。星云精準(zhǔn)測(cè)試通過軟件示波器在系統(tǒng)測(cè)試階段取采集多種代碼覆蓋率(最高支持航天航空標(biāo)準(zhǔn)MC/DC的100%覆蓋率要求)已亥,提供實(shí)時(shí)覆蓋率增長(zhǎng)趨勢(shì)圖及各類分析報(bào)表,管理者可清晰的觀察整個(gè)測(cè)試進(jìn)度情況来屠、效率等虑椎。

??覆蓋率智能合并。精準(zhǔn)測(cè)試可以按照敏捷的模式俱笛,將多個(gè)版本的覆蓋率以最新程序代碼版本為投影進(jìn)行合并捆姜,在控制流上直接累加,無需在每個(gè)版本上跑全量用例迎膜。它在不同的版本上執(zhí)行不同功能范圍的用例娇未,然后合并一個(gè)測(cè)試周期的覆蓋率信息,看總體的覆蓋情況星虹。覆蓋率合并算法將全自動(dòng)分析每個(gè)版本序列上程序函數(shù)變更的情況零抬,以最新版本往前合并,直到某個(gè)模塊的代碼發(fā)生變化宽涌,在此之間的覆蓋率均可合并平夜。

??增量覆蓋率分析。版本發(fā)布后卸亮,精準(zhǔn)測(cè)試可以對(duì)增量代碼覆蓋專門有一個(gè)統(tǒng)計(jì)維度忽妒,這樣也是對(duì)于覆蓋率目標(biāo)的一種工業(yè)應(yīng)用新思路,不用去關(guān)注總體覆蓋兼贸,而在迭代中關(guān)注調(diào)整代碼的覆蓋段直,尤其是新增代碼的覆蓋情況。

??覆蓋率可視化溶诞。在星云精準(zhǔn)測(cè)試中鸯檬,用戶在選擇分析的覆蓋率維度后,系統(tǒng)就會(huì)將被測(cè)試程序的相關(guān)結(jié)構(gòu)展示出來螺垢,并且用顏色表達(dá)覆蓋情況:綠色代表覆蓋喧务,深藍(lán)色代表未覆蓋。同時(shí)告知覆蓋率的分子和分母都是哪些枉圃,非常清晰的展示覆蓋率可視化結(jié)果功茴。

??相關(guān)覆蓋率∧跚祝可將某個(gè)功能用例所觸及的函數(shù)范圍中坎穿,所有代碼分支作為覆蓋率的分母,真正運(yùn)行到的分支作為分子,這樣取得的相關(guān)覆蓋率非常具有實(shí)際指導(dǎo)意義玲昧。使用者在有權(quán)限的情況下犯祠,隨時(shí)可以看到:因此即使測(cè)試的是一個(gè)小功能范圍的用例集,其覆蓋結(jié)果也可以近似等價(jià)為這個(gè)功能范圍相關(guān)代碼的覆蓋率情況酌呆,亦可以用于分析某個(gè)功能范圍的測(cè)試是否充分衡载。

2、回歸測(cè)試用例的推薦和選认对:

??對(duì)于測(cè)試效率的提升痰娱,一般會(huì)提到狹義的自動(dòng)化測(cè)試,這也是行業(yè)內(nèi)通常解決回歸測(cè)試的辦法菩收。它是一種應(yīng)對(duì)全局回歸的方法梨睁,在無法有效確定回歸范圍的情況下,就通過技術(shù)手段全量回歸以確保系統(tǒng)的修改沒有引入新的問題娜饵。真正實(shí)施過全量自動(dòng)化回歸的團(tuán)隊(duì)坡贺,會(huì)對(duì)此項(xiàng)工作的難度和成本深有體會(huì)。

??星云精準(zhǔn)測(cè)試回歸用例自動(dòng)選取是屬于一種機(jī)器智能計(jì)算下安全的局部回歸箱舞。它根據(jù)歷史測(cè)試用例執(zhí)行的路徑信息以及新版本的代碼變更信息遍坟,自動(dòng)推薦和選取回歸測(cè)試用例集,并給出回歸優(yōu)先級(jí)和影響度晴股。用戶在測(cè)試人力有限的條件下愿伴,可以根據(jù)算法給出的優(yōu)先級(jí)安排測(cè)試執(zhí)行,以最有效的方法發(fā)現(xiàn)代碼調(diào)整引入的缺陷电湘。這種基于海量的程序運(yùn)行路徑計(jì)算的數(shù)據(jù)隔节,精確而完整,不會(huì)因團(tuán)隊(duì)工作狀態(tài)問題寂呛,而出現(xiàn)大量遺漏的現(xiàn)象怎诫。

五、小結(jié)

??精準(zhǔn)測(cè)試將大幅度提升測(cè)試數(shù)據(jù)的價(jià)值贷痪,也將產(chǎn)出大量對(duì)研發(fā)極有意義的分析數(shù)據(jù)幻妓。它必將推動(dòng)軟件行業(yè)的數(shù)字化改革,為傳統(tǒng)金融業(yè)務(wù)及金融創(chuàng)新(Fintech)呢诬,提供更智能涌哲、有效的軟件高端質(zhì)量保障思路與方法胖缤。

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末尚镰,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子哪廓,更是在濱河造成了極大的恐慌狗唉,老刑警劉巖,帶你破解...
    沈念sama閱讀 207,113評(píng)論 6 481
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件涡真,死亡現(xiàn)場(chǎng)離奇詭異分俯,居然都是意外死亡肾筐,警方通過查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 88,644評(píng)論 2 381
  • 文/潘曉璐 我一進(jìn)店門缸剪,熙熙樓的掌柜王于貴愁眉苦臉地迎上來吗铐,“玉大人,你說我怎么就攤上這事杏节』I” “怎么了?”我有些...
    開封第一講書人閱讀 153,340評(píng)論 0 344
  • 文/不壞的土叔 我叫張陵奋渔,是天一觀的道長(zhǎng)镊逝。 經(jīng)常有香客問我,道長(zhǎng)嫉鲸,這世上最難降的妖魔是什么撑蒜? 我笑而不...
    開封第一講書人閱讀 55,449評(píng)論 1 279
  • 正文 為了忘掉前任,我火速辦了婚禮玄渗,結(jié)果婚禮上座菠,老公的妹妹穿的比我還像新娘。我一直安慰自己藤树,他們只是感情好辈灼,可當(dāng)我...
    茶點(diǎn)故事閱讀 64,445評(píng)論 5 374
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著也榄,像睡著了一般巡莹。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上甜紫,一...
    開封第一講書人閱讀 49,166評(píng)論 1 284
  • 那天降宅,我揣著相機(jī)與錄音,去河邊找鬼囚霸。 笑死腰根,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的拓型。 我是一名探鬼主播额嘿,決...
    沈念sama閱讀 38,442評(píng)論 3 401
  • 文/蒼蘭香墨 我猛地睜開眼,長(zhǎng)吁一口氣:“原來是場(chǎng)噩夢(mèng)啊……” “哼劣挫!你這毒婦竟也來了册养?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 37,105評(píng)論 0 261
  • 序言:老撾萬榮一對(duì)情侶失蹤压固,失蹤者是張志新(化名)和其女友劉穎球拦,沒想到半個(gè)月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 43,601評(píng)論 1 300
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡坎炼,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 36,066評(píng)論 2 325
  • 正文 我和宋清朗相戀三年愧膀,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片谣光。...
    茶點(diǎn)故事閱讀 38,161評(píng)論 1 334
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡檩淋,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出萄金,到底是詐尸還是另有隱情狼钮,我是刑警寧澤,帶...
    沈念sama閱讀 33,792評(píng)論 4 323
  • 正文 年R本政府宣布捡絮,位于F島的核電站熬芜,受9級(jí)特大地震影響,放射性物質(zhì)發(fā)生泄漏福稳。R本人自食惡果不足惜涎拉,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,351評(píng)論 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望的圆。 院中可真熱鬧鼓拧,春花似錦、人聲如沸越妈。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,352評(píng)論 0 19
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽梅掠。三九已至酌住,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間阎抒,已是汗流浹背酪我。 一陣腳步聲響...
    開封第一講書人閱讀 31,584評(píng)論 1 261
  • 我被黑心中介騙來泰國(guó)打工, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留且叁,地道東北人都哭。 一個(gè)月前我還...
    沈念sama閱讀 45,618評(píng)論 2 355
  • 正文 我出身青樓,卻偏偏與公主長(zhǎng)得像逞带,于是被迫代替她去往敵國(guó)和親欺矫。 傳聞我的和親對(duì)象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 42,916評(píng)論 2 344

推薦閱讀更多精彩內(nèi)容