很久沒登陸博客園了,此刻是七月的最後一天。從念大學時候就開始用博客園,在下晚自習後睡覺前都會來博客園逛一逛,讀寫創做本身的生活。前端
時光荏苒,從畢業到如今已經10年,10年來一直從事着軟件測試的工做。從一個什麼都不會,到測試技術人員再到測試管理,期間有迷茫,有痛苦,有彎路,有捷徑。今天對本身過去的10年測試經歷作一個總結。python
一是給本身從新出發增長動力。程序員
二是給剛入道的、迷茫中的測試朋友一點點建議,但願大家少走彎路。web
首先,談談測試職業規劃,即作什麼的問題。所謂方向比努力重要,這絕對是一句真理。數據庫
若是能在剛走上測試工做崗位的時候明白這個道理,那麼不出5年,你必定能成爲某一測試領域的專家,那時不論是薪水、自信心都是順其天然的事情。可是遺憾的是,咱們獲取的太多信息是,測試人員是一個通才,什麼都要學,什麼都要懂。編程
結果這樣的一個方向,致使了3腳貓功夫的測試人員一大把。那麼什麼都懂一點的測試人員難道就沒有用武之地了嗎?也不是,能夠朝着測試管理崗位發展。說到這裏,引出了測試職業規劃的第一條路:測試管理。那麼很容易想到職業規劃的另一條路,測試技術專家。在測試技術領域裏,無外乎就是性能測試專家和自動化測試專家。服務器
明確了軟件測試職業規劃的三個方向,接下來就是如何選擇一條適合本身的方向。下面給出個人幾條建議。架構
關於選擇測試管理:首先你必定不是一個喜歡技術,對技術敏感的人,這個很容易判斷。第二,你必定是個善於溝通,組織協調能力強的人。第三,你的長期抗壓能力較強,上能頂住領導批評,下能頂住下屬埋怨。能受得了委屈,吃的了虧。第四,你對管理工做充滿持續的激情,若是過去你是一個比較如魚得水的學生幹部,那更加沒問題。總之,相對你的IQ,你的EQ更高。那麼從性格上來講你比較適合作測試管理工做。併發
關於選擇性能測試專家:正好和測試管理人員具有的性格相反,首先,你不喜歡組織協調這樣的工做,你性格有些孤傲,你上學的時候必定不是學生幹部,或者不是一個如魚得水的學生幹部。第二,你不必定是個技術狂熱者,但你不排斥技術,你的動手能力較強,喜歡實踐。能靜下心來學習。那麼你有成爲一個技術專家的潛力app
關於選擇自動化測試專家:和性能測試專家相似,若是你掌握一門編程語言,或者有信心學好一門編程語言,那麼恭喜你,你有成爲自動化測試專家的潛力。一般,性能測試專家和自動化測試專家在技術上是相通的。
肯定了本身的測試發展方向,接下來就是如何實現的問題。有一個著名的10000小時定律理論,即一我的想要成爲某個領域的專家,須要通過1萬個小時的錘鍊。按此比例計算,若是以天天工做8小時,一週工做5天計算,那麼成爲一個領域的專家須要4-5年的時間。
關於如何成長爲測試管理人才:首先你必定要成爲一個功能測試專家;經過參與至少2個完整項目的測試工做,你對測試理論、一個完整項目的測試流程、測試活動、測試輸出了於指掌。第二,儘可能選擇一個行業如電信、支付、網購、通信等深刻作下去,成爲該領域的業務專家。由於測試經理的角色每每也是半個需求人員的角色。第三,儘可能在頭三年的時間裏,親自參與功能測試、性能測試、自動化測試工做,爲後面測試管理的招聘工做、測試計劃、人員分配、任務安排打下一個良好的技術基礎,說白了,測試管理工做也是一個技術管理崗位,沒有必定的技術功底,很難開展後續的管理工做。
關於如何成長爲性能測試專家:剛進入測試管理崗位,你負責的工做必定是功能測試任務。沒有機會接觸性能測試工做。怎麼辦?個人建議是:自學或者參加培訓班,若是你是一個自我管理能力很是強的人,建議自學,若是不是,那麼建議參加專門的性能測試培訓班。參加培訓班以前最好大體瞭解一下性能測試的基礎知識。公衆號:程序員一凡
性能測試的學習過程大體以下:
1) 首先了解一個系統的架構,明白各服務器之間是如何交互工做、系統的數據流向、系統的壓力點,從而肯定性能測試需求和指標,即那些功能須要考慮壓力,能承擔的壓力是多大。好比一個購物網站,最典型的登錄功能、提交訂單功能須要支持多少個用戶併發,每一個併發用戶在幾秒以內完成操做,系統長時間在壓力狀態下的穩定性。
2) 第二選擇測試工具,對於基於Http協議的應用來講,通常loadrunner都能完成性能測試工做,學習loadrunner的三部曲:腳本錄製編寫(loadrunner generator)、場景設置和執行(loadrunner controller)、結果分析(loadrunner analysis)的內容。
對於一些沒法用現有工具實施性能測試的應用,須要考慮本身編寫工具來完成。因此一個優秀的性能測試工程師必定是能熟練使用一門編程語言的。
3) 實踐,必定要多實踐,安裝完loadrunner之後,loadrunner裏帶有現成的性能測試項目---飛機訂票系統。徹底能夠拿來練手loadrunner。
4) 性能測試的目的是發現系統處理能力的瓶頸而系統調優纔是最終的目的,若是能進一步提升各業務服務器、數據庫服務器的調優技能,對性能測試工做來講是如虎添翼。
關於如何成長爲自動化測試專家:
自動化測試和性能測試不同,性能測試主要是對服務器的性能作測試,而自動化測試是從前端考慮,其目的旨在於替代部分手工測試、考量客戶端長時間運行的穩定性。自動化測試分爲:web站點的自動化測試、PC客戶端的自動化測試、手機端的自動化測試。每個終端的測試都是一個大的領域,建議先深刻學習一個終端的自動化測試技術。
關於Web端站點的自動化測試:經常使用的開源測試工具:selenium框架+一門編程語言(建議python),或者收費軟件QTP,推薦selenium,由於它是開源的、免費的,不存在盜版問題、且可擴展,因此國內的一線大公司喜歡用。
Pc客戶端自動化測試:經常使用的測試工具:QTP。付費軟件,國內不少小公司在用。
Android手機自動化測試:經常使用的測試工具:monkey、monkeyrunner、robutium、appium等,這些都是開源軟件。同樣,國內一流的公司都在使用。
蘋果端的自動化測試:經常使用的測試工具:Instrument、FoneMonke、Broomine、iphone SDK自帶的test unit。
無論學習哪個終端的自動化測試,熟練掌握一門編程語言是必要條件。
最後談談軟實力,一個優秀的測試技術專家,我認爲須要具有如下幾個特性:
持續學習能力:計算機技術的發展可謂突飛猛進,若是不持續學習,那麼不出2年,你就會發現你只能當一個廉價的手工測試人員。因此若是能在工做中學習最好,不能的話,下班後保證2個小時的自學時間。幾年下來,你就能發現本身的進步有多大。
溝通能力:我以爲能夠從2方面培養:第一:平常工做的溝通能力:和開發、產品、運維、客服同事的溝通要及時,表達要準確,多微笑、多傾聽、保持良好輕鬆的同事關係。第二,正式場合的溝通能力,如項目週會、評審會議、總結會議,必定要提早作準備,講什麼、怎麼講,本身私下裏先練習一下,這樣在正式場合才能表達清楚、氣定神閒、落落大方,給領導和同事留下一個好的印象。
團隊合做能力:首先從心態上,要強調總體的概念,放下單打獨鬥的想法。在實際項目中,體現爲團隊成員之間的相互協做、資源共享、共同進退。這個時代已經不是一個英雄創造神話的年代了,只有團隊的齊心合力才能把項目作好,這樣的人每每也是公司最喜歡,最願意去培養的人。
與優秀的人爲伍:所謂近朱者赤,近墨者黑。跟對一個老大、和優秀的人共事,找一個優秀的伴侶、常常去參加一些牛人講座、技術論壇,經過這些人的耳濡目染,必定會讓你少走不少彎路。
其餘還有不少軟實力,但我我的認爲以上幾點比較重要。整好的資料助你跳槽加薪!拒絕三天打魚 兩天曬網。
凡事要趁早,特別是技術行業,必定要在頭幾年打下紮實的技術功底,這對未來的技術管理或技術專家路線都有極大的幫助。
不知不覺寫了這麼多,感受尚未說完,但願個人一些拙見能對剛畢業的同窗和還在測試領域迷茫的同窗一點幫助。
前路漫漫,多留給本身時間思考,太陽雨、停了,繼續出發。我給本身點了一個贊!