天天看點

我的測試

一轉眼,進入測試已經四個年頭。這四年裡我從一個對測試一無所知的新人,成長為一名軟體測試工程師。這一路走來,有過奮鬥,有過夢想,有過激情,但遺憾的是還沒有成就。偶然聽到《老男孩》這首歌的時候,我不得不感慨萬千,“當初的願望都實作了嗎,事到如今隻好祭奠嗎”,入職時“曾經志在四方少年”如今也隻能“羨慕南飛的燕”啦。有些悲涼了,幸好還沒那麼嚴重。現在,把我的一些成長經曆分享給新入測試的同行,希望他們成為我所羨慕的“南飛的燕”,同時借此機會總結一下四年的測試生活,提升一下文字水準。

  08年因為招聘會上的與北大青鳥的一位主考的交談,開啟了我對測試的興趣。我可能永遠都不會忘記那位同行的那些問題:“水杯的品質怎麼測?”。在現在看來,這個問題如同問“你知道飯有幾種吃法?”這樣簡單,可對于當時的我而言,卻有點“丈二金剛摸不着頭腦”,我隻能把我所想的簡單說了一下,比如往地上砸一下,往桌子上碰一下之類。我當時确實沒有想到後來所知道的“驗收标準測試”,“裝其他液體測試”等等答案。後來他又問我,“你知道哪些測試工具?”。這下我徹底懵了,雖然是軟體專業出身,但對于測試還真是沒有太多概念,更不用提測試工具了。當這位主考發現我對于測試一無所知的時候,他很高興并有些得意的告訴我“同學,你該來北大青鳥教育訓練了。相信我們,沒錯的!”好了,這一篇可以翻過了。因為在這之後所發生的,我相信“你懂的”。其實這一段文字,我想說的是剛畢業那會兒,我真的很單純,準确的說是測試的新人都是很單純的,對于職業是需要一種引導的。

  當畢業後,我拿着研究了小半年的關于性能測試和loadrunner的畢業論文來到了xx。二面的時候,同樣是一些問題,讓我時至今日也感覺十分汗顔。當時測試主管問的是“你知道什麼是qc嗎?”。我很直接的回答“ qc是一種測試工具”。然後又問“那什麼是qa呢?”,“還是工具!”。後來,我才知道原來qc指的是測試執行,而qa是品質保證。有時候我不得不把這次讓我羞赧的問答同那個北大青鳥的主考官聯系起來,因為是他引導了我去學習測試工具,花了半年的時間研究了loadrunner和qc,導緻我滿腦子裡想的都是工具。好了,這一篇也可以翻過了。這一段文字,我想說的是測試新人其實就是一張白紙,需要良好并且正确的引導,而我無疑最終成了塗鴉闆。

  入職後的一年裡,和很多新入職的朋友一樣,我對于測試技術和測試工具非常的迷戀,尤其迷戀上了自動化測試。那個時候煩是一有執行測試的機會,我就想把我所學到的工具用上。09年的時候為了測試一個項目的webservice元件,我花了一個月的時間學習了qtp,然後用qtp錄制webservciestudio,達到了可以實作測試的效果。但最終因為測試時間有限以及測試部在其他測試組已經有了更成熟的webservice測試架構,導緻我的自動化測試方案沒有能用起來。雖然當時我的這套測試方案并沒有得到認同,而且被指出了很多不合适的地方,比如qtp是商業化工具不太提倡,qtp錄制webservicestudio産生的這套腳本自身也不太穩定,要做參數化也需要測試人員具備一定的vbs使用基礎,對于後期維護不利。但值得慶幸的是,當時我并沒有放棄這套方案,而是把同僚們給我提出的這些建議收集起來,改進到我的這套方案,并且最終在09年下半年完成了我的第一個完整的webservice測試套件(基于vbs的webservice自動化測試腳本)。到這裡還沒有結束,我并沒有把這套方案應用到項目上來,因為當時大家還是迷戀于soaptest的那種強大功能。我悄悄的把這套方案寫到了我在51testing上的部落格上,并且定期的去修改它維護它,直到2010年,這套方案才最終順利的應用到了一些項目的測試過程中,因為這個時候一些同僚開始發現soaptest太強大了,以至于它的學習成本,使用難度,執行效率都不是很理想,對于大資料量的接口測試,他們需要一套簡單而行之有效的測試方案。好了,這一篇可以翻過了。這一段文字,我想說的是在測試的路上可能會遇到各種各樣的困難,但它們并不妨礙我們的成長,隻要我們心中都有夢想,堅持住,總能雨後見晴天。

  2010年的時候,我負責起一個測試小組的日常工作并且指導一名新同僚的成長。這一年裡,我幾乎忘記了以前學習的所有工具的使用,因為我發現工具用的再好,始終離不開測試理論的支援。于是我在日常的工作中,投入了很多的時間去學習測試理論和測試管理知識,而忽視了技術方面的提高和鞏固。以至于當我從測試小組管理回到測試執行的崗位上時,才猛然發現自己失去的太多。因為我們是技術性的崗位,技術和理論并不是兩條平行線,而是糾纏在一起,相輔相成。回到測試執行崗位之後,想再做一些自動化測試相關的探索,已經是力不從心了。一切都得從頭開始學,連自己寫過的腳本都很難看懂。好了,這一篇可以艱難的翻過了。這一段文字,我想說的是如果你成為了測試組長,在繁忙的管理工作中,别忘了複習一下測試執行時期學習的那些知識,哪怕是一條用例設計的方法或者一段簡單的測試腳本。

  2011年,我了解到了很多的對于我來說相當“潮”的測試工作相關的名詞:“selenium”、“air”、“持續建構與持續內建”、“架構”(10年言必談“架構”的時代已經過去了,現在是言必談“架構”了。)、“滲透測試”、“缺陷分層”、“網際網路雲”、“android”等等。這些詞彙證明了一個偉大網際網路測試時代的到來。而對于這個時代,我和除了我之外還有一些同行都已經是“奧特曼”了。當看到百度測試技術沙龍、淘寶測試技術嘉年華、網際網路測試技術交會等一些國内有影響力的測試交流會上,來自各大企業的測試專家激情分享各自的測試經驗的時候,我突然發現,在測試這份工作上,我是那麼的短視。好了,這将是最後一篇了。我要分享我2011年的感悟了,感悟比我深刻的請直擊點選文檔右上方的叉按鈕,感悟程度和我相同或者小于我的,那我們共勉吧。除了我以外還有很多的測試同行,可能都存在這樣的一些問題。我們學習qtp、學習loadrunner、學習soapui,學習各種各樣的先進的測試工具、先進的測試方法,但我們始終缺乏一種大局觀,一種技術上的大局觀。在移動網際網路的時代,那就是一種移動網際網路測試技術的大局觀。舉個例子來說:當聽說蘋果與adobe發生争執,而最終adobe決定棄移動flash而去的時候,你是否想過蘋果的手機裡air應用将如何測試,移動浏覽器的相容性又如何進行測試,換句話說,你是否意識到這樣的一個動态會造成怎麼樣的測試技術上的變更。那麼如何去擷取這種大局觀呢,這就是我們部門的文化之一“改進”。那麼又該從何處開始改進呢?我們需要打開我們的眼界,多去關注一些測試的動态,比如上面提到的百度測試技術沙龍、淘寶測試技術嘉年華、網際網路測試技術交會等。從中了解那些測試大師們的思想,同時了解目前測試技術時代的變更。因為在這裡,qtp、loadrunner都不是測試技術,真正的測試技術是一種開放的、合适的、富于創造和激情的态度。

繼續閱讀