開發與測試從來都是互相對立的關系,我不并否認測試技術含量沒有開發技術要求高,但是并不意味着開發人員就能做好測試人員的工作。門檻低是這個行業對測試普遍的認為,是以也導緻這個行業對測試技術要求也就不怎麼高,畢竟目前從事測試行業基本上有30%的測試人員是非計算機專業出身,但也不見的計算機專業出身的測試人員就一定做的比其他要好,就像我們最開始學習軟體技術一樣,技術講究的是邏輯思維。不過有一點可以肯定的是計算機專業出身的人肯定就學習過程式設計,不然那就不能算計算機專業的。
自從我開始進入測試這個圈子,我就總會注意到這個行業對測試人員的要求和認可度,因為開發技術比測試要強,是以測試人員永遠就會比開發低一個層次,每當開發與我們測試發生争論的時候,我們總覺得自己很不自信,什麼原因?估計也是心知肚明,因為技不如人,其實不然。首先來說,我不是一個純粹的測試人員出身,從事過程式設計開發工作有助于從事測試工作,這個是目前行業對測試人員最好的定位。但是不管這個界定有多麼重要,我們還是要相信測試可以比肩開發,因為我們并不反對自己學習程式設計。其實程式設計對于測試人員來說意味着什麼,我想如果真正想把測試做好的人,肯定學習過程式設計技術,或者說曾經也熱愛過寫程式,甚至我聽到我以前很多同僚說起想轉Dev的想法,我覺得都不奇怪,當有一天我們發現開發設計出來的東西,讓我們覺得自己設計都比他好,我想我也會毫無猶豫的說出這樣的想法。但我們必須要明白作為一個測試人員學習程式設計技術到底意味着什麼,不是轉做開發,也不是興趣,那就隻能是用來提高工作效率。我記得在上家公司的時候,因為一件很小的事情讓我覺得自信源于我們簡單的想法,我用一段VBscript代碼完成了一個我們開發與測試每天都要去重複手動操作的事情,當時确實得到了開發人員的認可,雖然這種事情可能對于開發來說很簡單,但是至少他們不會像我們測試人員那樣,學會從小事上提高效率,讓我們的工作變得很簡單。能力定位決定于一個人的思維方式,至少我可不覺得測試工作是這樣的。我開始慢慢發現學會程式設計技術并不是為了轉做Dev,可能也并不是為了做自動化測試(因為目前自動化測試效率并不高),因為我們通常情況下隻是一名黑盒測試工程師,我們的本質工作就是在黑盒測試中發現更多的bug,但是我熱愛這個行業,是以我想做一個高效的測試人員。從最開始的對程式設計有濃烈的興趣開始,到最後發現學習程式設計并不是為了做開發,到後來我發現程式設計可以讓我在測試工作中眼界更廣闊、思維更活躍,了解也更深,更重要的是可以與開發人員走的更近,形成有效的溝通橋梁。
即使你不是一名自動化測試工作,或者不計劃從事白盒測試,但我仍舊強烈建議你學習幾種程式設計技術,至少學習一種腳本語言,Vbscript、JavaScript、Ruby/Perl等,至少一種通用的程式設計語言Java、C++、C等。我相信大家每天都在為簡單而又重複的工作覺得枯燥無味,長時間的重複習慣讓人覺得麻木,如果你可以這樣,不知道你還有沒有想學習一點程式設計的東西。加入你每天都要登入QQ、MSN、電子郵箱,或者還是有登入OA、JIRA系統等,如果你每天開機隻需要點選一下快捷腳本,你會發現的你每天第一件重複而又讓你煩惱的事情就這樣一個指令全解決了,你還會覺得枯燥,那應該說很酷了。其實測試工作中也是這樣,為什麼會有自動化這個概念的誕生,因為我們希望我們重複的工作會按照的意圖和指令來安排并完成。
追求更高效的軟體測試是一個測試人員不斷提高自己水準的動力之一,在這一點上程式設計能力真的有意想不到的作用哦。
作為總結,我想說我對程式設計能力對測試工程師的作用的看法是,它很重要,但并不是核心的能力。它,是為了讓我們更高效的發現bug,那才是測試工程師最核心的能力。
本文轉自一米一陽光部落格園部落格,原文連結: http://www.cnblogs.com/candle806/archive/2010/11/29/1891237.html ,如需轉載請自行聯系原作者