近年來,由于IT行業的人才稀缺,越來越多人轉向了IT相關職業。
由于IT軟件業的薪資較高,吸引了不少人選擇了IT軟件專業,IT軟件專業包括軟件開發、Java工程師、軟件測試工程師等。
軟件測試工程師主要是負責理解產品的功能要求,并對其進行測試,檢查軟件有沒有錯誤(Bug),決定軟件是否具有穩定性(Robustness),寫出相應的測試規范和測試案例。
簡單的說,軟件測試工程師在一家軟件企業中擔當的是“質量管理”角色,及時糾錯及時更正,確保產品的正常運作。
那么要成為一個軟件測試工程師應具備哪些職業素質呢?
#01分析能力
軟件測試的核心其實應該就是設計測試用例了,而設計測試用例,就是依賴與分析能力了。這里我們不說那些常用的設計方法,從一個稍高的層面上來講,就是怎么將一個復雜的系統進行抽象,分析拆成幾個不同的維度,結合維度可能出現的情況進行有選擇的組合,以最小成本獲取最大的收益。無法將一個復雜系統拆解成簡單的維度,是沒法做好用例設計的。
#02編程語言
語言其實就像說話一樣,只不過我們常說的英語日語之類是與人溝通,計算機語言就是與計算機進行溝通的。對于測試工程師來說,精通一門語言,熟悉其它幾門語言是有必要的。對于不同語言編寫的被測程序,是有不同特點的,如果對實現的語言不了解,無法進行白盒測試,沒法看代碼diff(結合代碼diff做測試)來提高效率。對于特點不了解,可能也會導致自己漏掉部分內容。
#03設計能力
不要認為設計能力就是開發工程師的事情,擁有好的設計能力,就可以在設計評審的時候多提意見,促進開發工程師使用好的設計,不僅對開發有好處,對測試也是很有好處的。這樣才能防患于未然,不僅自己的勞動力,也節省團隊的勞動力。
#04對業務的理解
對業務的理解越充分,就越能夠理解最終用戶的需求,促進產品設計使用好的方式,促進產品成功。難道你想做一大堆不成功的項目么,那樣是多么沒有成就感的一件事啊。
#05自動化相關的考慮
隨著項目越來越多,系統的測試項目也會積累的越來越多,每次有新功能了,難道要用手工來回歸一下原有的case么。自動化測試是提高回歸測試效率的唯一解決方案(如果你說還有解決方案就是不回歸,我…),以高效率促進高質量,才是一個良性循環的發展方式啊。
在很多企業的開發團隊中,測試人員的地位越來越重要,測試人員把控著產品的質量,驅動著開發的流程。
國際標準開發團隊的開發人員和測試人員的比例為1:1,而我們國內卻是8:1,一個測試人員要對方8個開發人員。巨大的測試人才缺口期待我們的選擇。
雖然測試的技術門檻相對于開發較低,但是軟件測試工程師在企業中的重要程度不容小覷,特別是具備一定編程能力、精通功能和性能測試的高端軟件測試工程師絕對是軟件企業中的VIP!