论UT阶段
測(cè)試與開(kāi)發(fā)這對(duì)立的命運(yùn)啊
如果是對(duì)測(cè)試從業(yè)者心存鄙視的朋友啊,請(qǐng)關(guān)掉此頁(yè),帶著偏見(jiàn)不好看的~
人生就像一個(gè)旅途,每個(gè)人看到風(fēng)景不一樣,世界觀(guān)、人生觀(guān)、價(jià)值觀(guān)也就不同。不要試著去改變別人,因?yàn)槟愕挠^(guān)點(diǎn)在他的世界里并沒(méi)有例子,或者例子在他世界里最后得到的結(jié)果與你相反的。
十年前看了一本軟件測(cè)試書(shū)籍,里面有一個(gè)理論:
-------------------------------
一個(gè)軟件的缺陷發(fā)現(xiàn)成分構(gòu)成:8:[2=(2:8)]
8:2, 缺陷發(fā)現(xiàn)分成10成,其中8成是開(kāi)發(fā)UT階段發(fā)現(xiàn)的,2成流到測(cè)試階段。
2=(2:8),測(cè)試階段這2成也看作一個(gè)10成,其中2成是測(cè)試階段發(fā)現(xiàn)的,8成是發(fā)布后客戶(hù)發(fā)現(xiàn)的。
-------------------------------
當(dāng)時(shí)對(duì)這個(gè)理論是噗之以鼻,但現(xiàn)在對(duì)于從業(yè)測(cè)試八年的我來(lái)說(shuō),這特么 太真相、太事實(shí)。
就算多會(huì)功能,安全,性能,自動(dòng)化,最多是把第二個(gè)比率加強(qiáng)到5:5。
所以總10成里一定有1~1.6成的缺陷流向生產(chǎn)環(huán)境,事實(shí)缺陷總是在軟件發(fā)布后被客戶(hù)發(fā)現(xiàn)并投訴的。
在下不會(huì)拋出這個(gè)命題求解。肯定存在一些大神可能有了解決方案,但絕對(duì)是獨(dú)有的。這世界還沒(méi)有賈維斯。
工作這么多年,觀(guān)察了許多許多,咳~也就是所接觸到的全部開(kāi)發(fā),其中僅有兩位能做到UT自己的代碼把這8成缺陷找完。可能是自身的層次不夠高,接觸不到更多的優(yōu)秀開(kāi)發(fā)大佬。
講講這兩位同事吧(心里其實(shí)想吐槽那些的,不過(guò)糟心,還是講講正能量),
七年前,剛參加工作,那時(shí)我也是一位開(kāi)發(fā),寫(xiě)MFC前端,C/S項(xiàng)目,現(xiàn)在做了測(cè)試,慚愧!慚愧!??? 這位同事剛從部隊(duì)轉(zhuǎn)業(yè)出來(lái),做事超級(jí)認(rèn)真。他當(dāng)時(shí)接到一個(gè)代碼量為兩周的大需求,花了七天,將流程圖,時(shí)序圖,詳設(shè),偽代碼等文檔都實(shí)現(xiàn)了,接著三天寫(xiě)完代碼。代碼三天搞定強(qiáng)大吧?但是,更強(qiáng)大的來(lái)了,看著他寫(xiě)Gtest,一天把自己所有的函數(shù)的Gtest全干完,然后一個(gè)一個(gè)測(cè)試,把所有傳參場(chǎng)景都跑完了,無(wú)誤后才提交測(cè)試,我全程在邊上看他直播(想拍死當(dāng)時(shí)的自己,坐這么近都沒(méi)感染到他的優(yōu)秀)。測(cè)試果然沒(méi)發(fā)現(xiàn)幾個(gè)問(wèn)題的。這種匠人精神,怎么說(shuō)了!現(xiàn)在應(yīng)該還有,不過(guò)估計(jì)都存在于大廠(chǎng)中。這位同事與我共事的第二年就三面HW進(jìn)去了。
另一位平凡一點(diǎn),在一家外包公司,此時(shí)我已經(jīng)轉(zhuǎn)測(cè)試很久了,這位同事接了一個(gè)七天代碼量的活,第一天弄好詳設(shè)(后來(lái)才知道那詳設(shè)里面有測(cè)試用例),碼了五天代碼,后面兩天,一直在自己寫(xiě)接口測(cè)試腳本,搭建環(huán)境做功能測(cè)試,連UI的測(cè)試都不放過(guò),等到第七天轉(zhuǎn)測(cè)試給我。多數(shù)據(jù)提交經(jīng)過(guò)七個(gè)階段,七個(gè)角色層層審核,最后發(fā)布信息的大流程,一次性冒煙通過(guò)(最近項(xiàng)目組是全部開(kāi)發(fā)包括項(xiàng)目經(jīng)理都問(wèn)我冒煙測(cè)試是啥意思,呵~),沒(méi)有多余的話(huà),三天測(cè)試,共測(cè)試了三輪功能,暴力測(cè)試,安全測(cè)試,共發(fā)了14個(gè)缺陷,嘖嘖~,上線(xiàn)后一直穩(wěn)定。做完這個(gè)需求他就辭職了,理由是覺(jué)得周邊沒(méi)有一個(gè)懂他的人,沒(méi)有一個(gè)朋友。其實(shí)吧,是拿到了一個(gè)大offer,都懂都懂,嘿嘿~
感謝人生遇到過(guò)這兩位同事,朋友,匠人。
說(shuō)完好的了啊,再說(shuō)說(shuō)那些的吧,唉~糟心~
近一年來(lái),每天提缺陷10多個(gè)、腦補(bǔ)產(chǎn)品需求、教開(kāi)發(fā)各種場(chǎng)景走流程、自己去抓取接口分析、給開(kāi)發(fā)提供場(chǎng)景參數(shù)、還得去研究各種安全場(chǎng)景、測(cè)出一些低級(jí)的安全問(wèn)題,然后軟件功能上線(xiàn)后,弄的雞飛狗跳的,天天緊急修復(fù)。能造成這樣的情況,代碼當(dāng)然是毫無(wú)UT階段可言啦,設(shè)計(jì)文檔是啥東西,好吃么?
現(xiàn)在是這個(gè)潮流,快餐化、速食化,誰(shuí)都不想把時(shí)間花在一些枯燥無(wú)味且自己看作沒(méi)用的事情上的。UT將會(huì)在一些層次被神話(huà)了、傳說(shuō)了,是我層次太低吧。
最后想法:即然開(kāi)發(fā)從業(yè)者都不把UT階段這8成做到的話(huà),{8:[2=(2:8)]} = 10,那么這10成全壓在測(cè)試階段,測(cè)試階段僅能發(fā)現(xiàn)的缺陷是2~5成,還有5~8成是流向生產(chǎn)的。
可以想像,沒(méi)有開(kāi)發(fā)嚴(yán)格的UT階段,一個(gè)軟件發(fā)布在理論上(多年經(jīng)驗(yàn)告訴我,需要替換成事實(shí)上)是存在著巨大的風(fēng)險(xiǎn)的。線(xiàn)上用戶(hù)便成付費(fèi)測(cè)試人員。
開(kāi)發(fā)者會(huì)說(shuō):’測(cè)試也可以UT呀’?
當(dāng)然,這是對(duì)的,測(cè)試?yán)锩嬗蠻T工作者。但測(cè)試工作者分為功能,性能,自動(dòng)化,UT(白盒),接口安全等方向。目前業(yè)內(nèi),90%都是功能 、自動(dòng)化測(cè)試從業(yè)者。且大多數(shù)是速食小白。開(kāi)發(fā)者如何要求測(cè)試普遍能UT呢?
總結(jié)
- 上一篇: 图片播放技术总结
- 下一篇: XmlPullParserExcepti