轉載的...尚未閱畢全文
開發一個好的軟體,40%以上的時間用在測試上,所以軟體測試工程師非常重要,用我們的話來說很吃香。現在從事程序員的人有很多,做測試工程師的人少點,工作壓力不太大
測試工程師應該具備的三項基本素質[1] 很多年輕或者剛剛從事測試工作的工程師,經常會問:“測試工程師需要什么技能或者具有什么素質才是合格的?”與開發人員相比,測試人員不但需要一技之長,還需要掌握諸如操作系統、資料庫、網路等多方面的知識。
經過這幾年的發展,國內IT公司的測試水平有了很大的提高,但是與此同時,很多測試工程師也迎來了個人的發展瓶頸:很多人從測試工程師做到了測試經理的職位,不知道下一步如何發展;或者每天機械地從事着功能測試工作。
根據作者多年的經驗,一個有競爭力的測試人員要具有下面三個方面的素質:
計算機專業技能
計算機領域的專業技能是測試工程師應該必備的一項素質,是做好測試工作的前提條件。盡管沒有任何IT背景的人也可以從事測試工作,但是一名要想獲得更大發展空間或者持久競爭力的測試工程師,則計算機專業技能是必不可少的。計算機專業技能主要包含三個方面:
測試專業技能
現在軟體測試已經成為一個很有潛力的專業。要想成為一名優秀的測試工程師,首先應該具有扎實的專業基礎,這也是本書的編寫目的之一。因此,測試工程師應該努力學習測試專業知識,告別簡單的“點擊”之類的測試工作,讓測試工作以自己的專業知識為依托。
測試專業知識很多,本書內容主要以測試人員應該掌握的基礎專業技能為主。測試專業技能涉及的范圍很廣:既包括黑盒測試、白盒測試、測試用例設計等基礎測試技術,也包括單元測試、功能測試、集成測試、系統測試、性能測試等測試方法,還包括基礎的測試流程管理、缺陷管理、自動化測試技術等知識。
軟體編程技能
“測試人員是否需要編程?”可以說是測試人員最常提出的問題之一。實際上,由於在我國開發人員待遇普遍高於測試人員,因此能寫代碼的幾乎都去做開發了,而很多人則是因為做不了開發或者不能從事其它工作才“被迫”從事測試工作。最終的結果則是很多測試人員只能從事相對簡單的功能測試,能力強一點的則可以借助測試工具進行簡單的自動化測試(主要錄制、修改、回放測試腳本)。
軟體編程技能實際應該是測試人員的必備技能之一,在微軟,很多測試人員都擁有多年的開發經驗。因此,測試人員要想得到較好的職業發展,必須能夠編寫程序。只有能給編寫程序,才可以勝任諸如單元測試、集成測試、性能測試等難度較大的測試工作。
此外,對軟體測試人員的編程技能要求也有別於開發人員:測試人員編寫的程序應着眼於運行正確,同時兼顧高效率,尤其體現在與性能測試相關的測試代碼編寫上。因此測試人員要具備一定的演算法設計能力。依據作者的經驗,測試工程師至少應該掌握Java、C#、C++之類的一門語言以及相應的開發工具。
網路、操作系統、資料庫、中間件等知識:
與開發人員相比,測試人員掌握的知識具有“博而不精”的特點,“藝多不壓身”是個非常形象的比喻。由於測試中經常需要配置、調試各種測試環境,而且在性能測試中還要對各種系統平台進行分析與調優,因此測試人員需要掌握更多網路、操作系統、資料庫等知識。
在網路方面,測試人員應該掌握基本的網路協議以及網路工作原理,尤其要掌握一些網路環境的配置,這些都是測試工作中經常遇到的知識。
操作系統和中間件方面,應該掌握基本的使用以及安裝、配置等。例如很多應用系統都是基於Unix、linux來運行的,這就要求測試人員掌握基本的操作命令以及相關的工具軟體。而WebLogic、Websphere等中間件的安裝、配置很多時候也需要掌握一些。
資料庫知識則是更應該掌握技能,現在的應用系統幾乎離不開資料庫。因此不但要掌握基本的安裝、配置,還要掌握SQL。測試人員至少應該掌握Mysql、MS Sqlserver、Oracle等常見資料庫的使用。
作為一名測試人員,盡管不能精通所有的知識,但要想做好測試工作,應該盡可能地去學習更多的與測試工作相關的知識
軟體測試工程師-IT就業新亮點
根據有關職位統計資料顯示,在國外大多數軟體公司,1個軟體開發工程師就需要輔有2個軟體測試工程師。目前,軟體測試自動化技術在我國則剛剛被少數業內專家所認知,而這方面的專業技術人員在國內更是鳳毛麟角。根據對近期網路招聘IT人才情況的了解,許多正在招聘軟體測試工程師的企業很少能夠在招聘會上順利招到合適的人才。
隨着中國IT行業的發展,產品的質量控制與質量管理正逐漸成為企業生存與發展的核心。從軟體、硬體到系統集成,幾乎每個中大型IT企業的產品在發布前都需要大量的質量控制、測試和文檔工作,而這些工作必須依靠擁有嫻熟技術的專業軟體人才來完成。而軟體測試工程師就是其中之一。
據了解,由於軟體測試工程師處於重要崗位,所以必須具有電子、電機類相關專業知識背景,並且還應有兩年以上的實際操作經驗。他們應熟悉中國和國際軟體測試標准,熟練掌握和操作國際流行的系列軟體測試工具,能夠承擔比較復雜的軟體分析、測試、品質管理等任務,並能獨立擔任測試、品質管理部門的負責人。一般情況,軟體測試工程師可分為測試工程師、高級測試工程師和資深測試工程師三個等級。
在具體工作過程中,測試工程師的工作是利用測試工具按照測試方案和流程對產品進行功能和性能測試,甚至根據需要編寫不同的測試工具,設計和維護測試系統,對測試方案可能出現的問題進行分析和評估。對軟體測試工程師而言,必須具有高度的工作責任心和自信心。任何嚴格的測試必須是一種實事求是的測試,因為它關系到一個產品的質量問題,而測試工程師則是產品出貨前的把關人,所以,沒有專業的技術水准是無法勝任這項工作的。同時,由於測試工作一般由多個測試工程師共同完成,並且測試部門一般要與其他部門的人員進行較多的溝通,所以要求測試工程師不但要有較強的技術能力而且要有較強的溝通能力。
因此,在企業內部,軟體測試工程師基本處於“雙高”地位,即地位高、待遇高,有的人月薪可高達8000元。可以說他們的職業前景非常廣闊,從近期的企業人才需求和薪金水平來看,軟體測試工程師的年工資有逐年上升的明顯跡象。測試工程師這個職位必將成為IT就業的新亮點
沒有留言:
張貼留言