軟體測試的入行與轉行
軟體測試作為一個行業繁榮發展,也只是近四五年的事情,相關培訓也是雨後春筍,自2011年入行,看過太多人轉行,看過一些人帶著未知想入行,真真是圍城裡的人想出去,圍城外的人想進來。如果去網路上搜索相關信息,大都說,測試是個門檻低的行業,我曾經認同這個說法,現在對這個說法帶保留意見,不過,每次別人問我在做什麼的時候,我的回答一成不變:玩兒手機的。
這麼說一點兒都沒有逗你的意思,2011年的時候,諾基亞雖已遲暮,但還頑強的支撐著很多團隊的運轉,我從那個時候開始手機系統的測試,後來到android app的測試,然後就一直是app的測試,這兩種測試,都是每天對著手機各種玩,目的就是把目標玩兒死。所以針對我理解的軟體測試,作為QA,我簡單的閑聊下。我先來講兩個例子。
第一個,有個朋友的朋友本來的行業與IT毫不沾邊,非常唾棄那些動不動就拽英語的人,覺得別人中漢交雜的說話是故意拽,當然,他自己的英文貌似很差。因為自己的行業經常加班,工資貌似在7-8K的樣子,覺得暗無天日,就辭了職,去報了個軟體測試培訓班,說是包就業的,朋友知道我是做測試的,過來諮詢我的意見,但他的目的,主要是打聽我的工資水平,而不是軟體測試工程師的工作內容與必備技能,我非常真誠的聽了下這個朋友的朋友的具體情況,然後得出了個結論,他目前職業發展到了迷茫期和瓶頸期,而且聽說做IT的工資都很高,因為聽說,就像海市蜃樓在你眼前,迷茫的現有工作如魔鬼一樣在後面推你,稀里糊塗的你就往前走了。但是,第一,每個職業都有自己的瓶頸。第二,對於將要入行的職業一無所知就撲進來,我覺得不是勇氣。第三,我來說下行業里普遍的一些現象/概念。
一, 我們確實經常會中英文交雜的說話,我們會經常說,「這個bug 很難repro, repro rate 為30%」,「可以跟我說下這個bug的root cause嘛?」「明天之前我準備好test case」,我們沒在炫耀什麼,只是很多詞語確實只有那個英文單詞能確切的表達這個意思。我說的這種情況是中國團隊合作的情況。如果你處於外國團隊合作的情況,那麼對你的聽說能力就會有更高的要求,不過他們都很nice,跟中國的工作人員溝通,在不了解你英文水平的情況下都會特意放慢語速。所以你看,「nice」這個詞我真的不知道該用哪個詞來代替,你想說「很好」?但其實味道挺不一樣的。
二, 如果你的聽說很差,也一定要有一定的讀寫能力,因為可能你寫報告要用英文,即使不寫報告,提交bug也要用英文,即使不用英文提交bug,一些文檔你還是要看的吧?比如http://developer.android.com/index.html你說你可以看翻譯的?我也不知道該怎麼回答,我身邊的大牛都是能直接看原文書籍和文檔的,在我看來,QA尤其需要這項技能,因為測試技術在中國發展的很緩慢,中國頂尖的測試人才也許很多,但出來的書籍,參考文檔,先進的還是國外的多些。閱讀原文的能力,是很重要的一點。
三, 眾人眼中IT人才普遍工資高,這一點我還真不知道。僅就行業內來說,你的工資水平是跟你的個人能力嚴格掛鉤的。不掛鉤的情況分幾種,第一,企業急招,但是實在招不到人,所以高價招人,據說這種都是創業型小公司為了趕項目,會給應聘者超出能力範圍的薪資,但項目結束後呢?(這只是我的了解,並沒有實例)第二,企業急召,並且你的能力與職業有相對較高的匹配度。第三,HR和面試你的人要麼是土豪,要麼是傻X。所以,在了解市場行情,個人能力的前提下你再跟別人談錢。
四, 軟體測試也叫QA,我是玩兒手機的,但不是所有QA都是玩手機的。還有一種叫SDET也是QA的一種。QA又因為工作內容不同而有不同的工種,PC端和客戶端,他倆分別有同工種的仔仔。黑盒,白盒,自動化,性能等等。這些概念性的知識是你入行前就需要大致了解和準備的。每個工種都可以說是不同的行業,代表著你以後的職業路徑,所以,入行需謹慎。
五, QA也是有職業發展瓶頸的,就像女漢子也需要談戀愛一樣正常。而遇到瓶頸後是逃避還是尋找答案,跟行業沒關係,跟人有關係。
六, 外包這個詞你要知道,典型的幾個IT外包公司,文思海輝,博彥,軟通動力。這個詞當時我怎麼都理解不了,後來在外包公司待了兩年,才切身體會到。(哎,笨人沒的醫)通俗點說,A(僱主)公司把一部分活給B(外包公司)公司,你簽約B公司,但乾的是A公司項目的活。外包又分兩種,一種是外派到A公司去,另一種是公司內部有個團隊,在B公司裡面做這個活兒。外包的話有些人很排斥,在我看來倒是各有利弊。如果你想進入這個行業,但是不能直接和一些大牛公司牽手,那藉助外包就會是一個很好的平台。而對於新人來說,平台很重要。這塊要展開來說的話也可以但開個題了,暫且點到為止。
七, 溝通。對於開發,很多人的固有印象是每天埋頭寫代碼,對於測試呢?其實無論開發,測試,都不是每天埋頭寫代碼的。我們每天話30%~70%的精力去溝通,溝通需求,溝通repro step,溝通測試結果,修復方法……
第二個例子,遇到的新人,聰明,高EQ,高IQ,就是因為什麼都高,自己沒辦法低下來。然後自然而然的衍生出很多問題。而我的另一個朋友,同樣高EQ,高IQ,還是個大美女,但態度放的很低,再加上元認知能力強悍,毅力強悍,能力自然跟的上。同樣雙高的人,但她們的距離太遠了,這個距離是態度。我可以接受你不聰明,可以接受你效率低,我甚至可以接受你偶爾的懶散,但我的底線是你對工作的態度,我的最低期望是可以把最簡單的工作放心的交給你。我想,態度這個問題不只是IT這個行業,應該是通用的。你可以不喜歡,但你得認真。就像有人跟你表白,你可以拒絕或接受,拒絕請利落,接受請認真。
這個引子貌似有點兒長而啰嗦,我想說的是什麼呢?入行。
如果你打算進入這個行業,那有些概念是你需要清楚的。
1. 軟體測試的概念
2. 軟體測試的分類
3. 軟體測試的工作流程
4. 軟體測試的測試方法分類
5. bug的定義
6. bug的生命周期
7. 測試策略的概念
8. 軟體測試常用的工具有哪些
9. 哪些技術是必備的?哪些是輔助的?
還有一些軟技能是你需要具備的:
1. 溝通能力
2. 自我驅動力
3. 學習能力
4. 快速的適應能力
5. 責任心
6. 態度
可能遠遠不止這些,但你連這些都不知道,那你選擇入行一定是過於魯莽了。知道不一定是讓你熟練掌握,你知道有這個概念就行了,等你實際工作了,遇到你就會對它有更深遠的理解。這是我最近才總結出來的,溫故知新,工作5年後重新去看那些基本概念,一些新的理解會冒出來。
那接下來說下轉行。從事軟體測試後轉行的有很多,有轉成產品經理的,項目經理,UI設計,交互設計,開發,還有跟IT毫不相關的職業。有工作10多年後轉的,有工作1,2年後轉的,有遇到瓶頸轉的,有因為職業路徑規劃轉的。而我遇到最多的,是QA轉產品經理,以及QA轉開發測試。如果是行業內的轉,你要知道,不同的行業,不止需要的是該行業的專業技能,還有思維方式。就像開發的思維方式是創造,測試的思維方式則是破壞。在我看來,這個是比技能更重要的轉變。寫到這突然覺得針對轉行這個話題,我沒啥能說的。
如果你列完一個表,劃分完權重,心裡90%的確定自己的選擇,那就去做吧。
推薦閱讀: