「意 識決定行動,行動決定結果」是管理學中眾所周知的名言。做測試的前幾年,筆者並沒有這個意識,也沒有主動地去思考過這個問題,但隨著乙個個專案任務、一樁 樁事件的歷練,慢慢感悟到這句話也適合對測試工作境界的理解。「心態決定命運」,「態度決定一切」,有很多名家學者都寫過這方面的書籍,基本上已成了我們 不可否認的真理了,但是要真正應用在自己的工作生活中,恐怕就不那麼簡單了。誠然,測試工作,除了需要擁有過硬的測試技術外,還必須有正確的測試心態,也 正是這些心態意識左右著你的日常工作。不同的心態反映了不同的測試境界高度,最終體現出不同的結果。
圍著bug轉,是測試三重境界中的第一重。概括起來,它又可以分為三個階段,第一,發現bug;第二,定位bug;第三,關閉bug。這三個階段對測試人員 的要求不僅在技術上需要逐層遞進,在綜合素質上也提出更高的要求。三個階段之間環環相扣。直到bug的生命週期結束。圍著bug轉的三個階段對測試人員的 要求及bug被發現到關閉的生命週期示意圖。如圖2-5所示。
圖2-5 圍著bug轉的三個高階圖
談到圍著bug轉的的三個階段,不禁想起中國近代著名學者王國維在《人間詞話》中提到的人生的三重境界:
「昨夜西風凋碧樹,獨上高樓,望盡天涯路」。「衣帶漸寬終不悔,為伊消得人憔悴」。
細細思量,感覺它們之間亦有異曲同工之處。
第一重「昨夜西風凋碧樹,獨上高樓,望盡天涯路」是說「古今之成大事業、大學問者,首先要樹立明確的目標,即使長路漫漫,也下定決心將這條長路走下去。這是乙個人在孤獨之中尋找理想、尋找生命的落腳點的痛苦時刻」。圍著bug轉的第一階
「發現bug」,同樣首先必須有明確清晰的目標,找bug的過程是漫長的,反反覆覆、枯燥無味是工作的特點,但是為了達到目標「長路再漫漫,也得堅持走下去」,直到找到一堆堆的bug。特別是對一些偶現的嚴重bug,重現bug的過**如大海撈針,但是堅持就是勝利。筆者曾經在經歷的乙個專案中,花了近1個月的時間去重現與解決乙個嚴重問題,最後在與開發人員的緊密合作下,終於找到問題的根源。
第二重「衣帶漸寬終不悔,為伊消得人憔悴」是說「執著的追求、忘我的奮鬥,直至憔悴消瘦,連衣服都變得寬大,這一切努力都是為了心中的夢想」。對應軟測中圍著bug轉的第二階「定位bug」。 這一階段不僅在技術上提出了更高的要求,還要有刻苦鑽研、窮追到底、不撞南牆不回頭的執著精神,直到把問題的原因搞清楚才罷休。在國內目前的測試領域,大 部分公司這一步並沒有要求測試人員來做,但是在國外,特別是一些知名的大公司,如在微軟,幾乎所有的測試人員都擁有深入除錯程式的技能。它除了包含以最短 路徑重現問題,還要分析問題的可能結果(例如分析bug會影響到哪些模組),甚至給開發人員提出解決方案。顯然,這一步要求測試人員要比開發人員具有更高的設計分析能力、**除錯能力、解決問題的能力。讀者朋友,看到這裡,對一些測試專業網上常看到的「測試人員是否要懂程式設計」這一問題已釋然於懷了吧。
第三重「
驀然回首,那人卻在燈火闌珊處
」。這一階段是指經過不斷磨鍊,多次的失敗,某一時刻忽然靈犀一點,領悟真諦,
發現自己想要的東西原來就在自己的身邊或領悟後的心裡。
在旁人看來,他的
「驀然回首
」是如何偶然而幸運,但其背後的用功之勤、平時的積累之深,又豈是常人所能堅持,所能想象的呢?
這時候,世俗目標是否已經達到已不再重要,重要的是靈魂的解放和心靈的歸屬。對應圍著bug轉的第三階「關閉bug」,如果僅從字面理解,很簡單,不就是開發解決了bug,回歸bug,然後把bug關閉。如果是這樣,筆者認為這種觀念仍屬於第一階。第三階的關閉bug,是指測試人員提交乙個bug後,要有主動意識推動開發人員解決問題,並協助他們解決,只有問題解決了,軟體的質量才得以提高,測試人員的最終目的才能達到。提交的有些問題嚴格來說,它不屬於bug, 而是一種設計缺陷,此時測試人員該怎麼辦呢?需主動召集相關專家進行其影響面的風險分析,並跟進此問題的整個解決過程,如果風險點涉及其他專業的更改(如 嵌入式軟體涉及硬體、機械等方面的知識),可能需要專門成立乙個專項問題解決團隊,以全面解決此問題,直到各專業方向的問題解決到位,回歸驗證完成,此bug方能關閉。站在bug的生命週期角度分析,乙個bug由被發現的起點,走到被關閉的終點,才
是乙個合理的、完整的過程,如圖2-6所示。但是要達到這一層,很可能有一大部分的工作已完全脫離了純軟體測試層面的工作,可是測試的最終目標不就是給使用者乙個高質量、信得過的產品嗎?我們需要有這樣的大氣胸懷,才能把產品的測試工作做得更深遠、更寬闊。
接下來結合案例對圍著bug轉的三個階段分別進行介紹。
本文節選自《軟體測試之魂:核心測試設計精解(第2版)》一書
肖利瓊
著電子工業出版社出版
測試的第一重境界 圍著Bug轉
意識決定行動,行動決定結果 是管理學中眾所周知的名言。做測試的前幾年,筆者並沒有這個意識,也沒有主動地去思考過這個問題,但隨著乙個個專案任務 一樁 樁事件的歷練,慢慢感悟到這句話也適合對測試工作境界的理解。心態決定命運 態度決定一切 有很多名家學者都寫過這方面的書籍,基本上已成了我們 不可否認的真理...
測試的第二重境界 站在Bug之上
測試的價值僅僅是發現bug嗎?通過 站在bug之上 測試第二重境界的介紹,希望能幫助讀者正確理解測試的真正價值是什麼,在實際工作中如何操作以體現 這些價值。不同的理念,將會牽引著測試人員朝不同的方向邁進,站在bug之上 可以拓寬測試人員的視野,找到更多可以充分體現測試價值的測試鏈,讓測試 人員為專案...
題一 尋找唯一重複的數
在長度為1001的陣列中儲存了1到1000總共1000個數,只有乙個數重複,請你找出重複的這個數 以長度為11的陣列為例做運算。如下 public static void main string args int x 0 for int i 1 i n.length i for int i 0 i ...