軟件測試是由于軟件開發(fā)編程行業(yè)高度成熟后所形成的產(chǎn)物。
從整體行業(yè)背景看,在中國的很多軟件企業(yè)存在著重開發(fā)、輕測試的現(xiàn)象,造成日后的軟件產(chǎn)品的質(zhì)量問題頻出;
這時候軟件測試的重要性尤為凸顯,那么想要成為一名軟件測試開發(fā)工程師都需要學(xué)習(xí)哪些內(nèi)容呢?
開發(fā)能力:JAVA(集合,泛型,基礎(chǔ)知識,調(diào)試,代碼閱讀),JavaScript/CSS/HTML(基礎(chǔ)知識,能結(jié)合知識實現(xiàn)項目),Python(基礎(chǔ)知識);
框架:Spring Boot,Spring MVC;Vuejs;
開發(fā)成果:可以單獨開發(fā)JAVAWEB后臺系統(tǒng),前端項目;管理系統(tǒng);
興趣愛好:機器學(xué)習(xí)(理解常用的機器學(xué)習(xí)知識與算法原理,以及簡單機器學(xué)習(xí)實現(xiàn));
計算機網(wǎng)絡(luò)知識:TCP/IP協(xié)議(HTTP,DNS);
操作系統(tǒng):LINUX服務(wù)器常用指令,服務(wù)器硬件指標(biāo)分析,shell編程基礎(chǔ);
中間件:TOMCAT,NGINX(負(fù)載均衡,結(jié)合keepalive高可用架構(gòu)),Mycat(分表分庫),Redis,Zookeeper;
數(shù)據(jù)庫:Oracle/MySQL,復(fù)雜查詢;
測試工具:JMeter,Postman等;
版本管理:GIT,SVN;
調(diào)度工具:JENKINS(理解);
大數(shù)據(jù):Hadoop(理解架構(gòu)),Hive;
以上知識,都是工作中接觸到的并且運用到的,當(dāng)然測試工作中有些可能不需要精通掌握,只僅限于“使用”。
除了這些,軟件測試工程師還需要掌握一些軟技能。
一,系統(tǒng)思維能力
無論是出軟件測試方案,還是用例設(shè)計,測試建模,場景化分析等都需要具備一定的系統(tǒng)思維,環(huán)環(huán)相扣,把遺漏風(fēng)險降到最 低。也是個人提升的必備
二,項目管理能力
測試人員最終的目標(biāo)是評估質(zhì)量風(fēng)險與風(fēng)險控制,但質(zhì)量并非是靠測試測出來的,而是在產(chǎn)品未孵化前的規(guī)劃就開始了,所以了解整個項目管理流程才可以實現(xiàn)對各個階段的質(zhì)量把控。
三,溝通表達(dá)能力
以上案例中已提到過,無論是日常工作與其他跨部門團(tuán)隊的溝通還是晉升的競聘環(huán)節(jié),以及面試過程中對自我的展示,都需要良好的溝通表達(dá),再優(yōu)秀的技術(shù)也需要靠表達(dá)去實現(xiàn)繼承和運用。
四,領(lǐng)導(dǎo)管理技能
測試人員的發(fā)展方向除了專家路線就是管理方向,當(dāng)然技術(shù)管理還是要以技術(shù)為本的,所以領(lǐng)導(dǎo)力會顯得尤其重要,但無論專家還是管理路線,擁有一定經(jīng)驗后需要做出決策以及測試策略如何讓別人信服就需要一定的領(lǐng)導(dǎo)力了,而領(lǐng)導(dǎo)力是可以有意培養(yǎng)的,如尊重法則,導(dǎo)航法則,影響力法則等,如何提出意見讓其他團(tuán)隊樂意接受也是一門學(xué)問。
五,觀察能力
一般,做過技術(shù)人員面試官的都會有些微表情,或面試心理學(xué)的知識儲備,如何快速識別需要靠長期的細(xì)節(jié)觀察能力來判斷候選人。知己知彼百戰(zhàn)百勝,不僅僅是面試官還有一些測試人員轉(zhuǎn)為業(yè)務(wù)專家或顧問后會更有學(xué)習(xí)的必要。
六,導(dǎo)師能力
有一定經(jīng)驗的測試人員即使沒做到管理層,也會被委任做某個方向的導(dǎo)師或培訓(xùn)人員,這時如何從自己學(xué)習(xí)到傳播給他人知識會有個轉(zhuǎn)變,也是工作的一部分,為測試組知識庫與技術(shù)儲備貢獻(xiàn)力量。工作一定時間后,就需要有意識的培養(yǎng)這方面的能力了。