寫作本文的動機原于 陳皓 的那篇《我們需要職QA嗎?》 ,今天有一位測試的朋友發到的QQ群里,所以才有幸拜讀到,搜索了一下這篇文章的標題發現轉載的到處都是。我居然現在才看到,鄙視一下自己,然后又看了段念《對《我們需要專職QA嗎?》的回應》對這篇文章的回應:
有測試朋友對陳皓 同學的這篇文章比較氣憤,因為他否定了我們廣大測試員存在的意義。如果有人跳出來對某人說,你做的工作毫無意義,有你沒你公司一樣運轉,項目一樣進行,這無疑是對這個人最大的打擊,這是對一個人辛苦工作的完全否定。
如果那人就只是簡單的否定,我們對其曰:“此人SB,不解釋~!”然后不屑都走開。但此人不但給出了否定,而且還給出了比較充分的說明,這樣不少測試工程師就不淡定了,就像年初的時候,方舟子說韓寒造假,還弄了不少“證據”,韓寒自然就不淡定了。扯遠了。
身為一個測試員(請允許我這么自稱),陳皓同學的前面的許多觀點我非常在贊同。鄙人不才,測試兩年有余,無項目開發經驗。在這里來談談自己的看法。
測試與QA
個人認為測試與QA是不同的,雖然,有不少公司對QA的定義是包含測試,比如淘寶吧。但我還是不喜歡別人叫我QA(其實,也沒人這么叫過),段念大哥也不喜歡別人這么叫,就連淘寶的季哥都不喜歡,他們更喜歡被叫著測試工程師,我嘛,小小測試員一枚。
從軟件有開發流程來講,一般的項目流程為:需求分析-->總體設計-->詳細設計-->開發編程--> 測試-->上線維護 ,對于這些工作來說,具備開發能力的人可以把整個流程走下來。單槍匹馬,白手起家的開發人員在IT行業還不少呢。這么來看,測試工作怎么不能被開發人員兼做了?測試是流程的一部分,也就是對其開發功能的驗證。假如你在家有手工的愛好,當你做好一個有趣或實用的東西時,去試試其功能,這是一般都有的思維。
居然有無知測試員大言不慚地說:“不懂開發的測試人員更能站在用戶的角度去測試。” 說過此言論的SB,不解釋!所以,我的結論是,開發人員完成可以勝任測試工作。
再來說QA吧,QA跟測試是兩碼事兒,我不知道那么多人與公司非要混搭,貌似還挺潮。在某某處有一個鞋匠,做的鞋子非常質量,來找他做鞋子的人越來越多,于是,鞋匠收了學徒,來找他做鞋子的人更多了,他收的學徒就更多了,后來,他辦了鞋廠,來找他做鞋子的從散戶變成了大客戶,一訂購就是好幾千雙。但做鞋子的人有手藝好的,也有手藝差的,有認真的,也有馬虎的。做出來鞋子質量就參差不齊,于是,銷量就下降了。為了控制每雙鞋子的質量,于是,就有了QA,他從鞋子的材料的裁剪,鞋跟的大小,上線,完工。制定了一套規范的流程,每個鞋匠按照這套流程來走,于是,鞋子的質量得到了保障。----這就是QA的作用。
那么軟件項目也有其流程標準CMMI 和ISO 9000 ,前者在軟件行業相當流行,因為是其針對軟件行業制定的標準,后者是國際標準,實用于所有行業。當然,還有TICKIT標準和ISO15504標準。那么QA根據這些標準,規范與約束公司軟件項目的整個流程。
你能告訴我,現在上了規模的,做產品的,不是管鞋子、手機,還是軟件哪個能離了QA 職位?陳皓同學給測試蓋個QA的帽子來批斗,你這到底是批誰呢?我迷糊了。當然,不能怪你,大家都這么混搭。
黑盒測試技術的難度有多大?
段念大哥給出了他的看法“所謂的黑盒測試技術,有多大的難度?平心而論,一個智商正常的具有較好計算機基礎的人,一個下午就能完全理解常用的黑盒測試技術,白盒測試技術也不會難到哪里去。只要開發工程師愿意,這些工作他們完全可以承擔 ” 大哥有十年的測試積累,也是我沖崇拜的對象之一,在和開發爭論時,必定搬此大牛“坐鎮”。黑盒測試嘛,無非就是那些個方法,等價類,邊界值,因果圖,甚至因果圖都很少用。但我更偏向于淘寶季哥的看法“對黑盒測試的深度問題”。
學會理解方法的使用很簡單,但真正的在項目中應用達到“爐火純青”的地步也非一朝一夕之功。曾見電視表演中有人用嘴以針為暗器,射在西瓜里。方法并不難學。難的是能把針吐到西瓜里,這就非一日之功。當然,我如果說高手用樹葉殺人,就會略覺我武俠看多了吧。
當你看過這些方法的背景以及應用的注意點后,你就會發現自己的理解是膚淺的,有多少做測試的同學完整的讀過《測試的藝術》這本書,與其追求熱門的測試技術,不如靜下心來深化對這些方法的理解。 你能測試的理解有多深?你能把所有測試方法的5W2H(What、Why、When、Where、Who、How、How Much)都能非常清晰明了的演講出來? 起碼我一個都答不出來,這點很慚愧!方法理解的不深,怎么能更好運用這些方法去做測試。做技術千萬不要本末倒置了。
想法不要被視野局限了
前面非常贊同陳皓同學的看法,看到“在做性能測試的時候,需要Dev手把手的教怎么做性能測試,如何找到系統性能極限,如何測試系統的latency,如何觀察系統的負載(CPU,內存,網絡帶寬,磁盤和網卡I/O,內存換頁……) ” 就看不下去了。
不知道你們怎么會找一個那么菜的人來做性能測試?是因為缺錢請不起性能測試高手呢?還是隨便拉一個測試員就讓其稿性能測試?
每個人所處的環境不同,以偏概全的認為測試人員就只會寫寫用例,點點鼠標。讓其去做性能測試,簡直就是浪費開發人員的生命。那么是否有點井底之蛙的感覺了。這個不多解釋了。
不愿改變的人會在憤怒中死亡
這句話是送給國內測試人員的,陳皓同學的那篇文章,有不少同學憤怒了,憑啥就把我們測試員給淘汰了呀。為什么是送給國內測試員的,因為國內純功能的測試人員頗多。不掌握核心技術,沒有其不可取代的競爭力,早晚是會被淘汰的。沒什么好憤怒的,不要以為那些個技術是開發人員的,我們測試不學。
微軟的招的功能測試工程師在減少,招的測試開發工程師在增加,谷歌招的測試工程師更少,Facebook根本沒有測試工程師。你固執的不原意去學習開發知識,那么只能在憤怒中死亡。 如果你有心看一下我博客中對各種技術的學習的話,我能告訴你我只是個普通的功能測試員么?好多測試新手告訴我,他們不知道學什么,我能想到測試人員必須掌握的技術,可能不上班在家學兩三年都學不完。你能找出淘汰我的理由么?
原文轉自:http://www.cnblogs.com/fnng/archive/2012/11/14/2769098.html