1. 想客戶(hù)之所想,思客戶(hù)之所思

在測試的過(guò)程中時(shí)刻想著(zhù)用戶(hù)。培養自己對用戶(hù)需求的共鳴。和用戶(hù)溝通并且觀(guān)察他們怎們樣使用你的軟件。多從用戶(hù)的角度去考慮問(wèn)題,從小白的角度去使用,用專(zhuān)家的態(tài)度去更改。

2. 多讀Bug

如果你和一個(gè)團隊的軟件測試工程師一起工作,那么請閱讀他們每天發(fā)的Bug,特別是那些針對你的測試部分的Bug 。你可以從別人如何找到Bug中學(xué)到很多東西。提高自己的觀(guān)察力。

3. 多讀代碼

找到你測試的那部分功能的代碼。雖然寫(xiě)代碼并不是你的事,但是讀那些代碼常常會(huì )幫助你找到潛在的邊際情況和軟件缺陷。多學(xué)習一項技能,多一次晉升的機會(huì )。

4. 為你發(fā)現的Bug而驕傲

促成一個(gè)軟件Bug的修復是從寫(xiě)好Bug標題和描述開(kāi)始的。我每次發(fā)完一個(gè)Bug都會(huì )把這個(gè)Bug重讀一遍以確保它是合理的并提供恰倒好處的細節。如果一些重要的Bug 沒(méi)有被糾正,要追根究底,確保決定和利弊權衡是正確的。相信自己是最棒的!

5. 參加軟件功能的設計

在軟代碼編寫(xiě)之前,在仍有可能有大的設計變更的時(shí)候,積極參加軟件的計劃階段,這會(huì )幫助你了解正被考慮的折衷和權衡。了解的深了才能看的更遠。

6. 設計你的測試

無(wú)論是尋找邊界值,運用組合技術(shù),畫(huà)圖表,或創(chuàng )建測試模型,把你的想法放進(jìn)你的測試設計中總是有用的。在試探性測試的時(shí)候,有意識地去交替你的測試計劃和產(chǎn)品學(xué)習。不斷嘗試找到更好的方法。

7. 了解你測試的功能

不管你測試的是那一塊功能,你應該了解它的設計,它的局限性,別人發(fā)現的Bug,代碼的變動(dòng),以及它和其它功能間的交互關(guān)系。多交流,多學(xué)習。

8. 和別人合作測試你負責的部分

和有不同專(zhuān)長(cháng)的人一起測試你的功能模塊,一起討論測試的點(diǎn)子并且征詢(xún)他們的反饋意見(jiàn)。交流經(jīng)驗,共同進(jìn)步。

9. 學(xué)習你測試的軟件

即使你只是測試一個(gè)軟件中的很小一部分,成為其它新功能和整個(gè)軟件的專(zhuān)家都會(huì )幫助你成為一個(gè)更好的測試工程師。經(jīng)驗是一點(diǎn)一點(diǎn)積累的。

10. 培養和開(kāi)發(fā)人員的良好關(guān)系

測試工作有時(shí)候是對抗性的,以致很容易使有些與你共事的人在做決定時(shí)忽略你的意見(jiàn)。與修復Bug的開(kāi)發(fā)人員建立堅實(shí)的關(guān)系對了解最新進(jìn)展和促成Bug的修復會(huì )有裨益。良好的溝通能力是解決問(wèn)題的前提。

11. 擴大你的領(lǐng)域和人際網(wǎng)絡(luò )

成功的人都有一個(gè)的堅實(shí)可信的交際圈。他們可以從中得到他們需要的專(zhuān)業(yè)知識和建議。不斷在你的公司內部和外部結交新朋友并發(fā)展專(zhuān)業(yè)領(lǐng)域的聯(lián)系。朋友圈是很重要的!

12. 尋找良師或榜樣

我和許多出色的測試工程師一起工作過(guò),并且從他們那里學(xué)到了很多東西。為了提高你的測試技能,你應該尋找“顧問(wèn)”與他們見(jiàn)面或者榜樣向他們效仿。三人行,必有我師焉!

13. 保持自省

測試工程師善于發(fā)現軟件的缺陷。如果把這種敏銳運用到自己身上,我們一定能更有效的發(fā)現自身的不足之處。吾日三省吾身

14. 管理你的時(shí)間

我們的時(shí)間很容易被大塊的工作和不斷的會(huì )議所占據,導致我們沒(méi)有時(shí)間去學(xué)習,去深挖更多的Bug,甚至沒(méi)有時(shí)間保持健康的生活狀態(tài)。為了避免透支,你需要學(xué)習如何管理你的時(shí)間。

15. 明智地選擇測試自動(dòng)化

自動(dòng)化測試可能缺乏熟練測試人員的那種“余光視力”。不正確的自動(dòng)化有時(shí)會(huì )變成一推龐大而難以維護的代碼,并且對衡量軟件質(zhì)量沒(méi)有什么實(shí)際意思。但是精心設計的自動(dòng)化測試有助于及早發(fā)現軟件缺陷。

16. 提高你的編程能力

我遇到過(guò)一些很有天賦的測試人員,他們傾向于不去寫(xiě)代碼。這有一定道理。就像電影評論家在變得挑剔而富有陳見(jiàn)后不會(huì )去考慮電影觀(guān)眾的喜惡一樣,在我充當編程員的角色時(shí),我想的就不再和用戶(hù)一樣了。但是編程還是一項有價(jià)值的技能,他能幫助你更好地閱讀代碼,理解產(chǎn)品的內在,同時(shí)幫助你寫(xiě)一些小工具使得平淡反復的工作變得簡(jiǎn)單。

17. 參加Bug的審閱 (Triage)

在產(chǎn)品發(fā)布前的最后一些日子里,Bug審閱組開(kāi)會(huì )決定哪一些Bug應該修復,哪一些應該留到以后的版本去修復。如果你通常不在這個(gè)會(huì )議的邀請名單中,那么去主動(dòng)要求參加。你會(huì )看到在測試員信譽(yù),用戶(hù)影響和已知風(fēng)險等因素間做出折衷決定的過(guò)程。這將會(huì )是一種非常有趣的經(jīng)歷。

18. 不斷學(xué)習

不管是“軟技能”,比如公開(kāi)演講, 或者編程語(yǔ)言,亦或新的測試技術(shù),成功的軟件測試工程師總是會(huì )從繁忙中抽出時(shí)間來(lái)堅持學(xué)習。

19. 愛(ài)你所做的事,并把它做好

如果你不能承擔放棄當前工作的代價(jià),那么就學(xué)著(zhù)去熱愛(ài)它。測試人員有時(shí)會(huì )變得嫉世憤俗,尤其是在困難的發(fā)布周期中。享受工作并且不滿(mǎn)足于僅僅完成計劃內目標的人才會(huì )成為優(yōu)秀的測試工程師。

20.要對自己有信息,相信自己是最棒的,任何bug都逃不過(guò)自己的眼睛。