軟件測(cè)試的第一重境界:圍著B(niǎo)ug轉(zhuǎn)
圍著Bug轉(zhuǎn), 是測(cè)試三重境界中的第一重。概括起來(lái),它又可以分為三個(gè)階段,第一,發(fā)現(xiàn)Bug;第二,定位Bug;第三,關(guān)閉Bug。這三個(gè)階段對(duì)測(cè)試人員的要求不僅在 技術(shù)上需要逐層遞進(jìn),在綜合素質(zhì)上也提出更高的要求。三個(gè)階段之間環(huán)環(huán)相扣。直到Bug的生命周期結(jié)束。圍著B(niǎo)ug轉(zhuǎn)的三個(gè)階段對(duì)測(cè)試人員的要求及Bug 被發(fā)現(xiàn)到關(guān)閉的生命周期示意圖。如圖2-5所示。
圖2-5 圍著B(niǎo)ug轉(zhuǎn)的三個(gè)進(jìn)階圖
談到圍著B(niǎo)ug轉(zhuǎn)的的三個(gè)階段,不禁想起中國(guó)近代著名學(xué)者王國(guó)維在《人間詞話》中提到的人生的三重境界:“昨夜西風(fēng)凋碧樹(shù),獨(dú)上高樓,望盡天涯路”。“衣帶漸寬終不悔,為伊消得人憔悴”。“眾里尋他千百度,驀然回首,那人卻在燈火闌珊處”。
細(xì)細(xì)思量,感覺(jué)它們之間亦有異曲同工之處。
第一重“昨夜西風(fēng)凋碧樹(shù),獨(dú)上高樓,望盡天涯路”是說(shuō)“古今之成大事業(yè)、大學(xué)問(wèn)者,首先要樹(shù)立明確的目標(biāo),即使長(zhǎng)路漫漫,也下定決心將這條長(zhǎng)路走下去。 這是一個(gè)人在孤獨(dú)之中尋找理想、尋找生命的落腳點(diǎn)的痛苦時(shí)刻”。圍著B(niǎo)ug轉(zhuǎn)的第一階“發(fā)現(xiàn)Bug”,同樣首先必須有明確清晰的目標(biāo),找Bug的過(guò)程是漫 長(zhǎng)的,反反復(fù)復(fù)、枯燥無(wú)味是工作的特點(diǎn),但是為了達(dá)到目標(biāo)“長(zhǎng)路再漫漫,也得堅(jiān)持走下去”,直到找到一堆堆的Bug。特別是對(duì)一些偶現(xiàn)的嚴(yán)重Bug,重現(xiàn) Bug的過(guò)程真如大海撈針,但是堅(jiān)持就是勝利。筆者曾經(jīng)在經(jīng)歷的一個(gè)項(xiàng)目中,花了近1個(gè)月的時(shí)間去重現(xiàn)與解決一個(gè)嚴(yán)重問(wèn)題,最后在與開(kāi)發(fā)人員的緊密合作 下,終于找到問(wèn)題的根源。
第二重“衣帶漸寬終不悔,為伊消得人憔悴”是說(shuō)“執(zhí)著的追求、忘我的奮斗,直至憔 悴消瘦,連衣服都變得寬大,這一切努力都是為了心中的夢(mèng)想”。對(duì)應(yīng)軟測(cè)中圍著B(niǎo)ug轉(zhuǎn)的第二階“定位Bug”。這一階段不僅在技術(shù)上提出了更高的要求,還 要有刻苦鉆研、窮追到底、不撞南墻不回頭的執(zhí)著精神,直到把問(wèn)題的原因搞清楚才罷休。在國(guó)內(nèi)目前的測(cè)試領(lǐng)域,大部分公司這一步并沒(méi)有要求測(cè)試人員來(lái)做,但 是在國(guó)外,特別是一些知名的大公司,如在微軟, 幾乎所有的測(cè)試人員都擁有深入調(diào)試程序的技能。它除了包含以最短路徑重現(xiàn)問(wèn)題,還要分析問(wèn)題的可能結(jié)果(例如分析Bug會(huì)影響到哪些模塊),甚至給開(kāi)發(fā)人 員提出解決方案。顯然,這一步要求測(cè)試人員要比開(kāi)發(fā)人員具有更高的設(shè)計(jì)分析能力、代碼調(diào)試能力、解決問(wèn)題的能力。讀者朋友,看到這里,對(duì)一些測(cè)試專業(yè)網(wǎng)上 常看到的“測(cè)試人員是否要懂編程”這一問(wèn)題已釋然于懷了吧。
第三重“眾里尋他千百度,驀然回首,那人卻在燈 火闌珊處”。這一階段是指經(jīng)過(guò)不斷磨煉,多次的失敗,某一時(shí)刻忽然靈犀一點(diǎn),領(lǐng)悟真諦,發(fā)現(xiàn)自己想要的東西原來(lái)就在自己的身邊或領(lǐng)悟后的心里。在旁人看 來(lái),他的“驀然回首”是如何偶然而幸運(yùn),但其背后的用功之勤、平時(shí)的積累之深,又豈是常人所能堅(jiān)持,所能想象的呢?這時(shí)候,世俗目標(biāo)是否已經(jīng)達(dá)到已不再重 要,重要的是靈魂的解放和心靈的歸屬。對(duì)應(yīng)圍著B(niǎo)ug轉(zhuǎn)的第三階“關(guān)閉Bug”,如果僅從字面理解,很簡(jiǎn)單,不就是開(kāi)發(fā)解決了Bug,回歸Bug,然后把 Bug關(guān)閉。如果是這樣,筆者認(rèn)為這種觀念仍屬于第一階。第三階的關(guān)閉Bug,是指測(cè)試人員提交一個(gè)Bug后,要有主動(dòng)意識(shí)推動(dòng)開(kāi)發(fā)人員解決問(wèn)題,并協(xié)助 他們解決,只有問(wèn)題解決了,軟件的質(zhì)量才得以提高,測(cè)試人員的最終目的才能達(dá)到。提交的有些問(wèn)題嚴(yán)格來(lái)說(shuō),它不屬于Bug,而是一種設(shè)計(jì)缺陷,此時(shí)測(cè)試人 員該怎么辦呢?需主動(dòng)召集相關(guān)專家進(jìn)行其影響面的風(fēng)險(xiǎn)分析,并跟進(jìn)此問(wèn)題的整個(gè)解決過(guò)程,如果風(fēng)險(xiǎn)點(diǎn)涉及其他專業(yè)的更改(如嵌入式軟件涉及硬件、機(jī)械等方 面的知識(shí)),可能需要專門成立一個(gè)專項(xiàng)問(wèn)題解決團(tuán)隊(duì),以全面解決此問(wèn)題,直到各專業(yè)方向的問(wèn)題解決到位,回歸驗(yàn)證完成,此Bug方能關(guān)閉。站在Bug的生 命周期角度分析,一個(gè)Bug由被發(fā)現(xiàn)的起點(diǎn),走到被關(guān)閉的終點(diǎn),才是一個(gè)合理的、完整的過(guò)程,如圖2-6所示。但是要達(dá)到這一層,很可能有一大部分的工作 已完全脫離了純軟件測(cè)試層面的工作,可是測(cè)試的最終目標(biāo)不就是給用戶一個(gè)高質(zhì)量、信得過(guò)的產(chǎn)品嗎?我們需要有這樣的大氣胸懷,才能把產(chǎn)品的測(cè)試工作做得更深遠(yuǎn)、更寬闊。
接下來(lái)結(jié)合案例對(duì)圍著B(niǎo)ug轉(zhuǎn)的三個(gè)階段分別進(jìn)行介紹。
posted on 2013-05-27 11:17 順其自然EVO 閱讀(202) 評(píng)論(0) 編輯 收藏 所屬分類: 測(cè)試學(xué)習(xí)專欄