目錄
靖邊網(wǎng)站建設(shè)公司創(chuàng)新互聯(lián)公司,靖邊網(wǎng)站設(shè)計(jì)制作,有大型網(wǎng)站制作公司豐富經(jīng)驗(yàn)。已為靖邊上千余家提供企業(yè)網(wǎng)站建設(shè)服務(wù)。企業(yè)網(wǎng)站搭建\外貿(mào)網(wǎng)站建設(shè)要多少錢,請(qǐng)找那個(gè)售后服務(wù)好的靖邊做網(wǎng)站的公司定做!我經(jīng)歷過的一些重構(gòu)
我理解的系統(tǒng)重構(gòu)的關(guān)注點(diǎn)
過程中QA要做的事情
背景:使用了上古語言Delphi,共計(jì)300W行(包括底層3D引擎)代碼,為了跟上新時(shí)代技術(shù)棧,需要整體切換到C++語言。集團(tuán)內(nèi)部提供了已驗(yàn)證的新版C++引擎,業(yè)務(wù)線需要將各自業(yè)務(wù)代碼遷移至C++。
重構(gòu)過程:
過程中的問題:1、任務(wù)估時(shí)邏輯不對(duì),太過樂觀。2、團(tuán)隊(duì)開發(fā)人員C++經(jīng)驗(yàn)較少。3、按單個(gè)模塊順序重構(gòu),測(cè)試介入時(shí)間太晚,不可測(cè)性太高。4、歷史功能邏輯梳理不夠,開發(fā)中有很多漏需求的情況。
背景:一個(gè)極其龐大的單體PHP應(yīng)用,由于業(yè)務(wù)數(shù)據(jù)量增長和性能需求,需要將其中核心業(yè)務(wù)拆解到JAVA微服務(wù)框架。
重構(gòu)過程:
過程中的問題:1、對(duì)于微服務(wù)涉及的知識(shí)儲(chǔ)備不夠,開發(fā)中的技術(shù)調(diào)整的補(bǔ)全導(dǎo)致返工。2、產(chǎn)品需求list缺失,大多數(shù)歷史邏輯是靠資深開發(fā)和測(cè)試確認(rèn)和補(bǔ)回。3、雖然保障了web端的對(duì)外接口協(xié)議不變,可以通過自動(dòng)化覆蓋大部分改動(dòng),但是對(duì)于移動(dòng)端api保障不足。4、中間遇到幾次由于對(duì)java技術(shù)棧不熟導(dǎo)致的故障。
背景:網(wǎng)盤的PC端文件同步系統(tǒng),由于歷史遺留bug太多+邏輯龐雜,難以繼續(xù)堆砌業(yè)務(wù)邏輯,決定重構(gòu)。
重構(gòu)過程:
過程中的問題:1、心態(tài)上負(fù)擔(dān)大,歷史名譽(yù)不好導(dǎo)致患得患失。2、前期重構(gòu)規(guī)劃不足,同時(shí)把從底層到前端全部重構(gòu),工作量大,新技術(shù)多。3、研發(fā)團(tuán)隊(duì)中缺少相關(guān)技術(shù)棧沉淀和人員儲(chǔ)備4、開發(fā)質(zhì)量太差,同一份用例每次執(zhí)行都有很多bug(表現(xiàn)重復(fù)但底層原因各不相同)。5、缺少有效的測(cè)試手段,桌面客戶端歷史自動(dòng)化沉淀太少,純手工。6、產(chǎn)品只給了文件同步大原則邏輯,很多細(xì)節(jié)是邊開發(fā)邊確認(rèn)的,導(dǎo)致有很多追加的工作量。
背景:公司有新舊兩套媒資數(shù)據(jù)管理系統(tǒng),基于統(tǒng)一研發(fā)應(yīng)用+節(jié)省資源的需求,將業(yè)務(wù)系統(tǒng)中數(shù)據(jù)管理模塊從舊應(yīng)用遷移到新應(yīng)用。
過程中的問題:1、本身改造復(fù)雜度大,需要兼容的點(diǎn)多。2、前后端都有變更,測(cè)試手段有限,歷史積累自動(dòng)化無法應(yīng)用,絕大部分純手工。3、歷史產(chǎn)品邏輯細(xì)節(jié)較多,重構(gòu)團(tuán)隊(duì)這方面缺少輸入,經(jīng)常出現(xiàn)漏處理的業(yè)務(wù)邏輯。4、缺少更細(xì)粒度的灰度發(fā)布手段(只能應(yīng)用級(jí)別灰度)
我理解的系統(tǒng)重構(gòu)的關(guān)注點(diǎn)1、重構(gòu)狹義上看是技術(shù)層面的,業(yè)務(wù)邏輯無需改動(dòng),甚至上層應(yīng)用都應(yīng)該無感知。在重構(gòu)規(guī)劃時(shí),應(yīng)該盡可能往這個(gè)方向上靠攏,如果實(shí)在無法做到,那么風(fēng)險(xiǎn)極大。
2、重構(gòu)另一個(gè)維度來看,也是業(yè)務(wù)的一個(gè)妥協(xié),但也背著業(yè)務(wù)債。業(yè)務(wù)會(huì)有新的期待,新的要求,在技術(shù)規(guī)劃時(shí)就要考慮到。
3、重構(gòu)需要依賴功能清單(加粗)
重構(gòu)前,已有能力清單應(yīng)該明確并用來確認(rèn)重構(gòu)方案是否支持;
重構(gòu)過程中,也可以根據(jù)這個(gè)清單評(píng)估工作量和進(jìn)度;
測(cè)試時(shí)也要按照這個(gè)清單逐項(xiàng)驗(yàn)證。
這個(gè)清單應(yīng)該足夠細(xì)化,產(chǎn)品+測(cè)試+技術(shù)同學(xué)統(tǒng)一參與進(jìn)來梳理。
4、可能會(huì)受影響的上下游應(yīng)用都要評(píng)估到。關(guān)注他們的業(yè)務(wù)訴求和改造進(jìn)度訴求。
5、引入新技術(shù)、新框架要提前做好知識(shí)儲(chǔ)備+人員儲(chǔ)備。邊學(xué)邊開發(fā)是一件要命的事情。
6、重構(gòu)是一定一定需要測(cè)試介入的事情,從前期準(zhǔn)備階段就需要??蓽y(cè)試性需要從改造范圍+技術(shù)方案+進(jìn)度計(jì)劃多個(gè)維度考慮。
7、重構(gòu)期間盡可能專注,別受線上問題、業(yè)務(wù)壓力影響,其他團(tuán)隊(duì)/職能幫忙分擔(dān)些。
過程中QA要做的事情1、協(xié)助梳理歷史需求和能力。
這個(gè)大多數(shù)情況舊系統(tǒng)都缺少文檔沉淀、知識(shí)積累,甚至連當(dāng)初設(shè)計(jì)的人員都不在了。測(cè)試大概率是最熟悉這個(gè)系統(tǒng)的角色,重構(gòu)方案制定前,測(cè)試需要花較多時(shí)間來梳理、確認(rèn)歷史需求和能力,輸出給研發(fā),同時(shí)支撐自己的測(cè)試方案計(jì)劃。
2、重構(gòu)方案的可測(cè)試性評(píng)估和穩(wěn)定性要求。
判斷改造范圍來確定可采用哪些測(cè)試手段,盡可能復(fù)用之前的自動(dòng)化,也可以提測(cè)試需求(留后門接口、單測(cè)覆蓋度要求)
盡早提出穩(wěn)定性要求,比如灰度發(fā)布邏輯,可回滾邏輯,數(shù)據(jù)備份要求。
盡可能早的介入測(cè)試,可以提一些分階段測(cè)試要求
3、提前準(zhǔn)備好功能基線(功能清單)+非功能基線(性能表現(xiàn)),來評(píng)估重構(gòu)后的質(zhì)量表現(xiàn)。
4、如果發(fā)現(xiàn)上面有提到的可能導(dǎo)致質(zhì)量風(fēng)險(xiǎn)的特征,要及時(shí)調(diào)整投入的測(cè)試資源,充分測(cè)試。
5、新技術(shù)的引入和使用。流量回放、灰度發(fā)布+監(jiān)控、數(shù)據(jù)埋點(diǎn)
你是否還在尋找穩(wěn)定的海外服務(wù)器提供商?創(chuàng)新互聯(lián)www.cdcxhl.cn海外機(jī)房具備T級(jí)流量清洗系統(tǒng)配攻擊溯源,準(zhǔn)確流量調(diào)度確保服務(wù)器高可用性,企業(yè)級(jí)服務(wù)器適合批量采購,新人活動(dòng)首月15元起,快前往官網(wǎng)查看詳情吧
分享標(biāo)題:系統(tǒng)重構(gòu)類改造的測(cè)試總結(jié)-創(chuàng)新互聯(lián)
網(wǎng)站地址:http://bm7419.com/article8/dscpop.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供App開發(fā)、關(guān)鍵詞優(yōu)化、網(wǎng)站設(shè)計(jì)、用戶體驗(yàn)、微信小程序、網(wǎng)頁設(shè)計(jì)公司
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)
猜你還喜歡下面的內(nèi)容