測試工做6年,經歷過不一樣產品、共事過不一樣專業背景、能力的同事,踩過測試各類坑、遇到過各類bug。測試職場生涯積極努力上進業務和技術能力快速進步過、也有努力付出卻一無所獲過、有對測試生涯前景充滿但願認爲一片朝氣蓬勃過、也有對中年危機思考不知何去何從迷茫過。一直在努力,一直在思考,一直在探索。linux
6年測試生涯,不一樣的產品、不一樣的人、不一樣的事,經歷着不同的經歷,帶給我不同的思考。思考着如何不斷提高本身、思考着是否一直走測試這條路、思考着如何轉型、思考着如何作好如今以應對將來、思考如何能夠賺更多的錢。問題一直都在,我也一直在努力尋找答案的路上。shell
趁着國慶有空閒時間,寫寫個人軟件測試故事,但願對將來想要進入要進入這一行業、即將進入以及正在測試領域努力奮鬥的你有一點點啓發和思考。個人軟件測試生涯開始於2013年的那個夏天。。(一看就是老同志。。)數據庫
那年畢業的夏天,和舍友W踏上火車南下,一路偶有閒扯大可能是在睡覺。對即將開始的工做有點期待、憧憬,對將來能夠開始獨立生活感到嚮往。入職體檢、手續辦理完成後正式開始上班的第一天了。依然清晰記得那一天,一同和F、C兩個同事同時來到領導面前的場景。leader下面同時分管三個產品,我被分配到一個成熟產品P,其餘兩個同事分配到了產品C,另一個產品是E,這個後話,暫且不提。由於產品P只有一個同事在負責,很天然他成爲了個人新員工導師,我很榮幸。直到如今,雖然我幾經展轉周折,但咱們依然保持很好的聯繫。安全
工做就在個人導師指導下開始了。。各類業務知識、技能、測試工具、環境使用等等知識在自學和實踐、犯錯總結中不斷學習成長。新員工實踐都是在導師和leader規劃的範圍內有條不紊的開展着,很慶幸他們大多都是包容、忍耐和鼓勵、信任對待個人成長和不足,咱們相處、溝通的很融洽。大概在第4個月的時候由於另一個產品I由於測試經理精力有限須要放手。因爲這個產品i業務知識與我當前產品P有相通之處,leader想到了我。。對,一個菜鳥。leader與我師傅溝通評估個人能力決定讓我去接手產品I的測試組長職位,我也答應了。當時也不太懂,也沒有太大的壓力,就這樣跑步開始上崗了。。後來的經歷才知道跑步上崗的事情太多了。就跟打戰同樣,沒有那麼多的事情給你去準備。就是給你這個崗位,給你這一份壓力和責任,剩下的你本身去學習、去能力,遇到問題本身想辦法克服,經過本身、經過團隊、上升等等均可以。。網絡
很慶幸,產品I在新員工負責期間也沒有出啥問題,如今想一想我又沒有多大功勞,由於當時主要仍是學習的心態去負責這個產品、去與這個團隊的測試、開發成員、PM配合。去學習業務、去了解人、去提高本身。這時候談不上管理。如今想一想領導放心將產品放到我手裏負責。我想主要有幾個緣由。第1、產品I團隊開發、測試人員、PM人員穩定,技能成熟,合做的測試leader總體能力不錯。團隊陣型沒有變化不會有什麼風險。第2、產品成熟。每次版本交付需求量不大。第3、有我導師保障我,我有問題隨時能夠溝通。leader本身隨時關注。oracle
新員工學習爲主和相對壓力較小的工做任務下有條不紊的進行着,由於在產品I中承擔中與其餘新員工不同的職責、也承擔了相對負責的性能測試等任務。很榮幸新員工結束考覈時獲得了一個不錯的考評,這是有點出乎意料的。app
仔細回想,整個新員工期間有幾個事情印象比較深入。反思了一下如下幾點若是作得更好,也許結果會更好。工具
一、主動溝通。導師和leader都很忙,能夠主動找他們溝通,能夠發消息溝通、導師空閒時間工位溝通、發消息預定時間、吃飯時間閒聊均可以。吃飯時是一個很好時間段,儘可能跟導師、老員工、新員工等一塊吃飯。有更多的溝通時間也可讓你更快的融入這個團隊。性能
二、重複問題儘可能不問第二遍。個人導師挺煩這個的。因此問問題獲得的信息量大時我就會打斷他找個本子記錄回去慢慢整理。學習
三、跑步上崗。有好的機會該抓住就該抓住。不要懼怕本身這不會那不會。不會不是什麼大問題,怕的是不敢承擔。多問多學多溝通,注意處理問題的方法能解決不少問題。
四、在有能力作好本職工做前提下,能夠多關注一下其餘角色有關的是事情。其實原本也是,測試就是一個端到端的任務,不少信息都會影響到你對測試任務的評估。包括測試計劃、測試風險。
五、學習、動手、總結、分享。新員工就是一張白紙,什麼都要學。業務、技術、流程、溝通的技巧等等。努力提高本身。記得印象很深的一句話,當時去管理產品I的時候,與合做測試leader定位一個工具報錯的問題。shell寫的。看不懂。。合做測試leader說了一句,原來管理咱們的人都懂啊。。其實,當時是有點尷尬的。。固然如今這個已是so esay了。。
這兩個多是可遇不可求的事情。大部分人對導師和leader實際上是沒有選擇的權利。主要看緣分。我之因此要專門在這裏列出,就是我很慶幸我都遇到了。當時,產品P屬於成熟產品,我導師帶着一幫合做同事徹底能hold住。我徹底能夠不用參與任務。因此個人任務主要是學習。導師也是個技術控,喜歡鑽研各類問題。我有幸也跟着學習了不少的知識,也給了我充分的時間去學習各類各樣的知識。不只僅是業務。同時,leader也給予充分的時間自由去學習各類業務知識,並無催着我師傅給我分配任務,leader的基本觀點是磨刀不誤砍柴工,打牢基礎對之後會有很大幫助。同時在負責產品I期間,給予我充分放權、指導、鼓勵我放手去作,實踐我本身的想法。惋惜的是我當時沒有什麼太多的管理想法。。浪費了大好機會。。
當時記得leader找我溝通的時候常常會聊天。之因此是溝通是聊天,由於對leader仍是總體比較輕鬆。有幾句話到如今還有一些印象,好比三年內不要太關注收入,績效、職級、收入是你我的成長的附屬品,放手實踐你本身的想法、產品是公司的,能力提高是你本身的。我當時新員工過對收入也沒想那麼多也不認爲是畫餅洗腦上的,我如今也一樣認爲這些是有道理的。也可能會以本身看到的、經歷的去跟一些須要的人去講這些。這些內容關注點要放在本身身上,放在本身能力提高上面。由於這對於你來講是可控的部分。作好你如今的事情,努力提高本身,主要是關注本身有沒有收穫。你作好了不少東西天然就有了。。若是你能力提高了可是回報並無增長,你也有廣闊的選擇的餘地去支撐你的能力,你有更多的選擇,你能夠跳槽。只要你有能力,企業給的待遇仍是很高的。固然,若是領導跟你說板凳坐十年冷,這個我是不太贊同。十年過去了中年危機就到了。。不能光忽悠,不來點實質的物質獎勵啊。。
這裏指的是公司內部的轉崗,轉崗這種事情好壞也說不許。這裏說一件事。主要是供讀者一些思考。其實在我工做第二個年頭的時候,是有機會轉崗到安全測試部門的。當時同事就在那個部門要招人問了個人意向。以我當時本身考覈結果和能力要去應該也能去成。當時個人思考點主要是部門和leader都挺好的,以爲就呆着將來應該也還能夠。當時轉崗也不像如今這麼容易。也沒有思考太多當前部門的測試和安全測試有多大的區別,我就沒有選擇走。如今想一想其實有些小後悔。由於如今絕大多數部門的測試仍是偏重於功能測試,安全測試屬於專項測試,技能模型也不同,前景也不不同。其實有些小後悔,當時若是選擇走,短時間可能會有一些影響,可是長遠來看,應該是更符合當前的指望。畢竟就業前景要好不少。因此你們在作選擇的時候儘可能慎重,多思考,多跟好朋友多交流。考慮的維度儘可能廣一些。
業務和技術對於測試來講,實際上是存在一個木桶效應的問題。業務不熟或者技術有短板你可能都搞很差測試。業務和技術都很牛逼你的精力和時間投入確定要都知足。因此要儘可能作好知識體系構建、職業規劃,確保平衡這兩者之間的經歷投入。相對來講,技術更通用,技術越強你就越牛逼。業務(產品)相對有侷限,好比你是搞通訊領域的、好比你是搞支付產品的、你是測試app的、測試嵌入式產品的等等。業務能力很強也能夠成爲一個很厲害的人,好比你對支付產品的匯款、轉帳、支付很是熟悉,支付產品的行業理解也很深刻,你去求職銀行業務相關的企業、阿里支付、騰訊財付通的部門應該會比其餘產品轉崗過去的測試人員要更有優點,之前很多同事都去了這些部門。另外,若是你一直在一個產品,精通業務的各類知識,這種人也很是厲害,能夠搞TSE,能夠支撐開發、產品、測試內部全部人關於業務的答疑。這種業務強的人在部門待遇和職級也會很高。
可是從我的角度來講,我會傾向於多花一點時間在技術能力提高上面。以我爲例,我主要經歷過幾個不一樣產品,有傳統通訊領域的產品、有充值轉帳產品、有支付的產品、其餘當前的不寫了。。業務並無太強的連續性。可是個人技術一直是通用的。無論是編碼、網絡、數據庫仍是測試基礎理論、工程能力等等。重申一下,業務和技術都很重要,根據本身崗位的職責要求和本身的職業規劃,作好這兩者之間精力的分配。若是不知道咋規劃。就作好如今。好比功能測試,你必定要精通業務。若是你是性能測試,你可能只須要關注核心流程,而後是各類性能工具使用、性能調優方法。
到這裏說一點,其實我的一直還算是有點上進心的,從事工做到如今也一直努力。技能自認爲還算過的去。編碼也不慫,Python/Shell/Java/Autoit/DOS也都能寫、數據庫基礎、oracle數據庫管理、計算機網絡、測試基礎理論、測試管理、linux系統基本問題解決也還算能夠。組內大部分相關的問題到我這也能閉環,可是老是感受仍是不夠。說這個意思,就是但願讀者能夠多考慮一下,讓本身在某一方面特別精通,好比搞工具開發,你能夠不只能編碼,編碼效率寫的規範、效率高,你還能本身作規格設計。開發出的工具可擴展性、可維護性都很好等等。總之,必定要有某一方面的特長、深度,有廣度加分。全才對普通人不太可能,人的精力都是有限。
這裏說2個我認爲對本身能力提高或者經驗積累有很大幫助的2件事。
第1個就是案例學習。學習你的產品第一個版本到目前的全部的問題、現網問題、現網案例等等,快速積累經驗,提升對問題的敏感性。會對你之後的測試設計有很大的幫助。經過分析這些問題你會發現各類問題,有很是簡單顯而易見的、好比冒泡提示,有很是難以復現須要特殊構造場景才能發現的、有用戶體驗方面、性能、可靠性等等,所有分析下來你會發現本身對產品的理解、對測試的理解、對站在用戶角度作測試的理解會有很大的幫助。
第2個就是針對環境搭建或者經常使用工具測試源碼的學習。這裏的源碼不是指的版本源碼,主要指工具類源碼,由於像環境搭建或者升級操做之類對測試來講是很是常規的操做可是又常常會遇到問題。工具源碼一般來講體量都不會太大,你能夠用個思惟導圖梳理一下工具的源碼、一步一步拆解出關鍵步驟,每一步驟都是作什麼的、輸入輸出是什麼。到最後你再遇到環境搭建的問題,你會發現你很輕鬆的就能夠解決。由於你對他們的報錯日誌、爲何會報錯、定位方法瞭若指掌。你能解決的問題多了以後你會發現你可能在大家部門就會有影響力,你就有可能快速脫穎而出。另外,帶來的附加價值你可能對該門語言能力會提升不少。。
以上就是我說的挺有價值的兩件事。由於我這麼幹過,也確實從中得到很多收益。
軟件測試人員職業發展大概有2條途徑。一種是走技術路線,初級、高級、資深測試工程師,一種是管理路線。初級、高級工程師、測試組長、測試經理、測試部長等。還有一種是非正常的路線。有業務能力強的測試轉崗去搞產品經理的、搞需求調研的。有編碼能力強的測試轉開發的、也有轉資料的、也有轉崗與測試有相關性的,好比QA。還有風馬牛不相及的,轉崗去搞HR的、搞財經的、搞採購的、搞銷售的、服務的都有。正常的發展通道居多的仍是前面兩條的。
總的來講,要想有個好的職業生涯、有份好的收入首先要作的是不斷提升本身的業務和技能水平,提高本身的軟、硬技能。對於測試,分析問題能力、溝通表達能力必定要好,對於溝通,起碼的要求就是你能簡單明瞭的把一件事情或者一個問題說清楚,由於測試常常要和各個角色配合工做。關於測試職業發展,我也沒想好本身將來要從事什麼,如今也就是循序漸進的作好當下。本身都沒想好作好的事情就再也不這多說了。若是你也沒想好,那就作好如今。起碼收穫當下,你把當下事情作好了,領導承認了。你有好的績效,好的績效就有好的回報。繼而你可能會有好的崗位任命。作好了當下,可能領導就幫你規劃好了。。見過是有這樣的。。
危機十足啊。對這個問題,對本身的將來也有過思考,可是始終也沒有獲得本身想要的答案,也就是如今我也沒定好本身的目標。尤爲在二線城市,你能夠上各招聘APP看看,能力要求都挺高,可是薪資待遇仍是有限。這是客觀環境沒法改變。因此更須要提早考慮這個問題,提早作好準備,不打無準備之戰。對本身大概有個初步計劃,就是把這些年的經驗再梳理總結一下、把英語口語練練、測試管理中遇到的問題總結總結,踩過的坑再檢討檢討。。
上述都是一些我的體會,文筆有限寫的有點零碎,可是內容都是真實感覺的,若是能對一部分人有所啓發那就再好不過。目前本身仍是一直在思考將來,本身能夠作什麼,仍是指望將來能夠多賺錢^_^,過更好的生活。。