最近在領測軟件測試論壇新手上路板塊中看到了很多關于軟件測試培訓的帖子。在這里我想談談看看自己的看法,希望對想進入軟件測試行業的朋友有點幫助,當然,不妥之處盡請指教!
軟件測試這個行業的前景這里不說了,有人說好,有人說不好。說好的,是那些比較“牛”的人,一個月拿個上萬、過萬的工資,當然說好!說不好的呢,是那些覺得到處都是“老虎”,無法找到前進方向、技術不咋地,待遇一般般的。所以,個人的技術能力與薪資待遇決定了你的看法。對于初學者,或者想轉行的朋友,可能就需要考慮清楚了,這個行業到底適不適合你?!
我做軟件測試6年多了,一路走來,收獲頗多,也失去很多。軟件測試從起初的不起眼,到現在的“蓬勃”發展,經歷了不短的年頭。至于他與開發的關系這里不再表述了。主要說說軟件測試到底需要哪些技術,作為一個初學者到底需要多長時間來學習,能不能達到比較高的水平。對于那些冒號、分號不會打、C、D盤不知道在哪里的人,不是我打擊你們,你們來學軟件測試純屬瞎扯,去培訓了也找不到工作!除非先惡補計算機基礎!學軟件測試,你起碼得會用計算機,熟練的掌握常用的軟件,啥都不會,一問三不知,試問你能學會軟件測試嗎?你真的當軟件測試是個人就能做啊!(我有個朋友的主管這么跟她講!)
首先,軟件測試是一個質量管理的工作,那么基本的軟件測試理論,軟件工程理論,甚至軟件開發的理論,我們都需要有所了解,至于了解到什么程度,我個人覺得對于初學者,僅需知道這些理論即可,只要在面試、工作中能夠將手頭的工作與相應的理論聯系起來即可。所以,這些理論,看看、想想、背背也就行了。
其次、軟件測試工作對于文檔的編寫能力是有很高的要求,測試計劃、測試方案、測試報告及測試用例等等文檔很多時候需要我們親自操刀,那么這些基本的技能我們必須掌握。至于怎么學習,我們可以在網上找相關的示例,然后自己試著去學著寫,依葫蘆畫瓢,實際上每個公司都有自己的模板,在工作中按照實際的模板編寫就行了,不要太在意,即使面試的時候,基本不會讓你寫個計劃、方案給別人看看的。但前提是你必須知道這些文檔的組成部分。
接下來就是硬技術了,測試環境配置、測試用例設計、測試管理工具的使用等等,這些是必須的,別指望進公司你就可以學會了,現在的關鍵問題是你進不了公司,別人不會給你這個機會,現在的形勢我想不用再說了。那如何學這些東西,我的方法是自己上網找項目源代碼,自己部署環境、自己編寫測試計劃、設計測試用例、使用一些工具,這些東西都是可以利用網絡獲得的,別說這些是假的,實際上這些都是現實項目的縮影。態度決定一切!
對于編程的能力,論壇上有過討論,從我的個人經驗來說,對于初學者,不要太在意這玩意。你現在還沒會走呢,就想著跑了,怎么可能,那些單元測試、自動化測試豈是你一個初學者能勝任的?當然,我這里所說的僅是針對沒有編程能力的來說的。在起步階段,我們僅需要知道有哪些編程語言、知道一些簡單的語句,比如if、比如while等,不要想著學很多的語言,很多東西是相通的,別人說什么你就學什么,你當你是神啊!學習是個持續的過程,不要想著一步登天。我建議初學者,還是多看看C語言的東西。有人說java好,那么可以看看java版的c語言,哈哈。隨著你的經驗增加,技術增加,你再學其他語言的時候,速度就快了。有些東西看多了自然而然就會了。等你有了一定的基礎,再去學更深的技術,如自動化測試、單元測試等。
上面簡單的聊了聊軟件測試中常用的知識,也是大家關注的東西,其實現在找工作最重要的就是你的工作經驗。有人說,吹唄,簡歷上都寫上,不會的也寫,是個方法,避免被過濾掉,但我想問一下,這種摸獎式的找工作有多大意義?為什么不學一些真本事去面試?再加上現在的競爭這么激烈,這套伎倆可能過時了吧。那么如何讓自己擁有真實的技能呢?
說到這里,不得不說培訓了。培訓是個不錯的選擇,也有朋友說了。培訓機構都是騙人的,吹的,什么包就業、保底新。確實,這些東西有點虛,但大家有沒有想過,在培訓的日子里,老師們都講了什么?我們缺的是軟件測試技能與項目經驗,而培訓機構給你們的就是這些,如何在項目中運用這些技術,讓你學會理論與實際的結合,讓你在面試的時候,能夠講出個道道來,這就是關鍵的,因為你在學習的時候你確實做過,除非你夢游了!
學習軟件測試的方法很多,與其他的一樣:
1、自學。自學是個不錯的方法,對于有自制力的人,這是個好方法,但現在的學習環境太雜,你能定下心來嗎?就像學英語一樣,沒有一個好的環境,啞巴英語就誕生了。很多人買了不少書,看了不少視頻,逛了不少論壇,但學習的效果自己知道。
2、朋友帶。有領路人真幸福,他可以幫你,給你找資料,解答問題,但人家很閑嗎?他能給你講清楚嗎?
3、培訓。得花錢,不少培訓機構花的錢還不少,上萬,好貴,錢不是天上掉下來了,掙錢容易么!不到萬不得已,別想著培訓,前面的路子不通了,你再考慮培訓吧。
亂七八糟扯了一通,最終觀點:
1、想進入軟件測試行業的朋友考慮清楚了,軟件測試的前景你現在是看不到的,因為你還不了解測試,有人說那算了,我改成開發,或者其他的,別妄想了,其他都一樣!你不懂的東西讓你去展望未來呢,可能嗎?
軟件測試這個職業不會消亡,硬技術、就像我們父輩他們學的瓦工、木工一樣。
2、初學者別想著一口吃成胖子,不可能,老老實實由基礎學起。有人說軟件測試的東西太多、太雜,怎么可能在短期內學會,我說可能,非??赡?。再多再雜的東西是有相關性的,一通百通,只是方法問題,但你別拿那些高級玩意來說:獨立進行復雜的性能腳本設計,開發QTP腳本、進行單元測試,這些不是一朝一夕能會的,即使是培訓機構,也只能教你通用的方法,在項目中怎么使用工具,進行簡單的腳本設計。師傅領進門,修行在個人!
3、最好先自學,畢竟培訓費用都很高,錢不容易掙!當你對自己的自學能力懷疑的時候,就培訓吧,是個綠色通道!別聽太多人的建議,說簡單的,是因為他會了,說難的,是因為他不會,所以得看自己的能力,太多的建議不會給你帶來好處。
4、選擇培訓機構需要注意的是,別看網上評論,最好實地去看看??纯慈思业恼n程,最好跟任教的老師聊聊,問清楚了,清晰的定位自己,就像去醫院一樣,你的問題在哪里,你的不足在哪里都應該跟他講講。還有就是跟你聊的人必須是以后教你的。
從我的角度來說,軟件測試這個職業是不錯的,但是一切都是靠你自己的。如果你不努力,希望通過培訓能學到頂尖的技術,一畢業就拿個七八千,我告訴你不可能!培訓只給你帶來基本的技能與實際的項目經驗,增加你的面試成功率,掌握基本的軟件測試技能。有朋友培訓完了,能拿到5k或更高,有人只能拿到2k,甚至還找不到工作!我告訴你,別怪培訓機構、別怪軟件測試難,是因為你沒有努力,沒有付出!
學習軟件測試三個步驟:
1、自學
2、朋友帶
3、培訓
另:最近有很多朋友加了我,問到一個關鍵問題:自學與培訓的時間問題,對于這個問題我這么想,如果你現在在上班,那你可以自學,如果你現在迫切需要工作,或者想立刻離開現在的環境,那你就培訓。凡事都是有利有弊的,一切都得靠自己決定!自學,省錢但耗時間,沒有項目經驗;朋友帶,省錢,可能有點項目經驗但也耗時間,還受朋友的時間限制;培訓,有項目經驗,學習比較系統、時間快,但費錢(這是很多人的重點,哈哈)。所以,看你的決定了。
原文轉自:http://www.anti-gravitydesign.com