1. 想客戶之所想,思客戶之所思

在測試的過程中時刻想著用戶。培養自己對用戶需求的共鳴。和用戶溝通并且觀察他們怎們樣使用你的軟件。多從用戶的角度去考慮問題,從小白的角度去使用,用專家的態度去更改。

2. 多讀Bug

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

3. 多讀代碼

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

4. 為你發現的Bug而驕傲

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

5. 參加軟件功能的設計

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

6. 設計你的測試

無論是尋找邊界值,運用組合技術,畫圖表,或創建測試模型,把你的想法放進你的測試設計中總是有用的。在試探性測試的時候,有意識地去交替你的測試計劃和產品學習。不斷嘗試找到更好的方法。

7. 了解你測試的功能

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

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

和有不同專長的人一起測試你的功能模塊,一起討論測試的點子并且征詢他們的反饋意見。交流經驗,共同進步。

9. 學習你測試的軟件

即使你只是測試一個軟件中的很小一部分,成為其它新功能和整個軟件的專家都會幫助你成為一個更好的測試工程師。經驗是一點一點積累的。

10. 培養和開發人員的良好關系

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

11. 擴大你的領域和人際網絡

成功的人都有一個的堅實可信的交際圈。他們可以從中得到他們需要的專業知識和建議。不斷在你的公司內部和外部結交新朋友并發展專業領域的聯系。朋友圈是很重要的!

12. 尋找良師或榜樣

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

13. 保持自省

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

14. 管理你的時間

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

15. 明智地選擇測試自動化

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

16. 提高你的編程能力

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

17. 參加Bug的審閱 (Triage)

在產品發布前的最后一些日子里,Bug審閱組開會決定哪一些Bug應該修復,哪一些應該留到以后的版本去修復。如果你通常不在這個會議的邀請名單中,那么去主動要求參加。你會看到在測試員信譽,用戶影響和已知風險等因素間做出折衷決定的過程。這將會是一種非常有趣的經歷。

18. 不斷學習

不管是“軟技能”,比如公開演講, 或者編程語言,亦或新的測試技術,成功的軟件測試工程師總是會從繁忙中抽出時間來堅持學習。

19. 愛你所做的事,并把它做好

如果你不能承擔放棄當前工作的代價,那么就學著去熱愛它。測試人員有時會變得嫉世憤俗,尤其是在困難的發布周期中。享受工作并且不滿足于僅僅完成計劃內目標的人才會成為優秀的測試工程師。

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