《軟體測試員---你的路在哪裡?》:http://www.cnblogs.com/fnng/archive/2012/05/22/2512378.html 前些天寫了《軟體測試員---你的路在哪裡?》 我有提到,我問了一下大我幾歲朋友的薪資,他的薪資處在我劃分的第二階段的中間,情緒變得比較消極。 他告訴我,你跳到第二階段了,但再往上走,想有一個薪資的大跨度很難,需要的時間也相對比較長。然後,我就把測試員的路劃分了三個階段。雖然劃分了三個階段,但我並不知道如何跨越到第三個階段。自己也處於非常迷茫的狀態。 希望能得到有用的回複了評論,但大多回複說到努力做好現在,埋頭學好技術。這些是必須的,單就測試技術來說,多了去了。總要給自己找個比較明朗的方向和目標吧!不然,你是想一切隨緣呢?還是想等著柳暗花明呢?
先說一位網友在群裡發了一篇頗長的文章,大概意思是講功能測試一樣可以做到很牛。注意,我這裡的“功能測試”是
狹義上的功能,因為一切的軟體測試活動都是為了保證軟體功能的正確運行。而我這裡所說的功能測試是偏向於“手工”測試吧。這篇文章裡大講特講,功能測試員不單單是找功能上那些簡單的bug 。更要從需求和架構上發現隱藏了問題。我不否認他的正確性。但身為一個天朝的測試員,你一功能測試員管這麼“寬”,你讓拿著更高薪資的需求分析師和架構師情何以堪啊。
而且,在國內我沒發現有特麼牛的單單就會功能的功能測試專家。我想他們都應該轉行去做需求分析師了吧!說上面這些是想告訴你,想在國內通過功能測試(狹義)達到第三個階段很難。
後來群裡討論了一下,在這裡要感謝“拙文”的指點,大我兩歲,他已輕鬆跨越到第三階段,表示毫無壓力。唉!這就是人與人的差距。 自己思考了一下,把進階到第三階段分為三條路。白盒測試、自動化測試、效能測試。(從廣義上來講,白盒測試與自動化測試也屬於功能測試)
註:可能你也早知道這三個方向,我這裡對這三個方面做個分析,如有錯誤,歡迎指正!以免誤人誤已。呵呵!
白盒測試:
在我們大多測試員看來,這是個非常進階的工作,好多人視其為測試工作的終極目標。其實,它並沒有想象的進階與神秘,只是我們一般的“初級”測試員不懂開發,自認為比開發低半頭。如果能測開發人員寫的代碼,那自然是件不得了的事兒。呵呵! 其實,開發也就那麼回事兒。你看看那麼多的培訓機構,甚至有承諾你只要是理工科專業的,半年都能教會你開發,收入還三到八K之間。他們還教你有項目經驗,一個大點的項目做幾年的都有。他們就半年還讓你有項目經驗。其實,也是把比較基本的東西教給你,不會的函數會查文檔,工作之間會遇到開發各種各樣的系統。那也需要一個長期的學習各積累的過程。說這麼多就是想告訴你,開發不難。下面看一下白盒測試需要掌握哪些技能: 首先,懂得一門開發語言是必須的,代碼都不懂,如何寫測試代碼。是吧!不過,你是否疑慮開發人員寫了個100行的代碼,你可能可要寫200行有代碼來驗證開發人員100行有代碼是否正確。不用擔心,有測試來架構來幫你呢?像java的測試架構有JUnit、testNG ,C++測試架構有CPPUnit、Unit++等等,基本上現在流行有語言都有相應的測試架構。所以,在熟悉了一門語言之後,你需要精通一門測試架構。 白盒測試,你需要做不僅僅是單元能測試,只真對開發人員的每段代碼進行測試。而且,在相當多的時候,單元測試是由開發人員自己完成的。你還需要做整合測試。多個單元代碼放到一起之後,你需要對這個整合小模組進行測試。你還需要進行介面測試。現在的系統相當複雜,各種子系統或模組之間需要相互調用彼此的介面。相關,整合測試與介面測試,本人未接觸過,所以,知之甚少。哈哈!
自動化測試:
這裡的自動化測試主要指的功能自動化測試,你是不是立刻想到了QTP,他只是個自動化的測試工具而已,QTP不等於自動化測試,如果你已經會用QTP錄製回放指令碼,那隻能算剛入門,用QTP的朋友都知道,要想QTP玩的比較深一點,那麼你必須學習VBS指令碼語言。 看到好多公司的一腔熱情的撲在自動化測試上,但投入了大量的成本,收效甚微,這個主要是他們的一沒自動化經驗,二沒分析系統是否適合自動化測試。但這並不妨礙自動化測試技術進住公司。還有大把的公司在嘗試自動化,因為它後期真的可以節約不小的成本。呵呵 下面來看想做自動化的測試的人員需要哪些技能。
除了QTP外,自動化工具很多,另一個比較有名的是selenium,他支援多種語言,java、php、C# 等等。如果你要自動化的項目是C/S的,那麼你需要對weindows組件了如指掌,因為你要用語言操作這些組件。不過,現在的大多項目都是基於web端的。在這裡想說一下現在的前端開發人員真的好悲劇,以前就一個IE6,現在各種各樣的瀏覽器百家爭鳴,我們要兼顧到各種瀏覽器。在這裡說聲“你們辛苦了!”,不急,身體web端的功能自動化測試人員,你也是個悲劇。因為前端的技術你都要會,前端技術發展的很快,各種絢麗的新組件,最近比大火的HTML5技術,因為你要用自動化捕捉這些組件的屬性。所以,你要面臨的問題很多。道路很曲折。
效能測試:
如果前面兩個你感覺有難度,要不咱再看看效能測試。總有一款適合你的,哈哈! 這個我會,我會用loadrunner,QTP都不等於動能自動化測試,你認為loadrunner會等於效能測試!?測試載入器只是效能測試過程中的一個部分,雖然,是必不可少的一部分,但效能工具的選擇也很多,比如,JMeter和webLOAD都是相當出色的效能測試工具。 其實,說效能測試工具是測試過程中不可缺少的一部分,那是在現在,過去還真不是。在那個沒有效能測試工具的年代,銀行測試人員組織員工,準備個幾十上百台電腦,領導一吹口哨,員工狂點滑鼠。不要笑,真有此事兒!扯遠了。呵呵。 看到現在市面上僅有的幾本效能測試書都是基於loadrunner工具來講的,這裡多少有點誤人的感覺。唉! 這裡糾正你一個觀點,你要測試的一個系統是一個整體,所以,你要對一個系統的整體都非常瞭解。你要給一個人看病,你只會看頭痛,可病人是肚子痛,你死盯著病人的頭研究,怎麼能找到病人問題的所在。當然,你可以找看肚子的醫生來協助。但看肚子的醫生可以會誤導你對病人問題的判斷。所以,你要向古代的華佗學習,什麼外科,內科,男科一人完搞定。為什麼講這個?因為下面我要說的東西你可能會認為不是做效能測試要學的內容。
服務系統:現在的系統有台是用windows的?所以,要學習linux/unix,不說精通也要熟練。因為你在效能測試的簡曆上常寫搭建測試環境,莫非~,是winddows的測試環境?安裝各種服務要會,查看監控系統效能,對系統幾部機制也要有所瞭解。 資料庫:至少要熟悉一種大型資料庫,對資料庫使用,調優!效能出了問題,不要死盯程式,也許是資料庫設計不合理或出現有效能問題引起了。你要會分析資料庫。
中介軟體:中介軟體是系統與伺服器的中間載體,要對中介軟體的機制效能有所瞭解。常見的中介軟體有tomcat、weblogic等。
軟體系統:唉,這裡又要扯開發的東西了,不過不用像白盒測試那樣精通。
系統架構:為什麼要學習架構的東西,同樣是幾塊木板,可以做成堅固的大樓,也可能做成風一吹就倒的雞窩。不瞭解系統架構如何進行測試,如何進行效能分析。 其它,網路知識,因為網路環境也是測試中很重要的一部分。協議,常有發現自己用loadrunner錄製了半天沒錄到東西或無法回放。這八成是協議選錯了。 ----------------------------------------------------------------------------------- 上面講的三個方向,你能做的其種一項工作,那麼你突破到第三階段毫無壓力。所果,在那項工作中小有所成,那將前途們量了。呵呵!在寫完這篇博文的時候,我就給自己定下了目標。關於每項工作所需要的技能我也略有闡述。但不是很明確。因為,我不是過來人。但有了目標總是好的。你呢? 圖,再次說明,我真的很喜歡都市夜景。