為什么互聯網公司不開除軟件測試工程師?

發表于:2017-05-22來源:ThoughtWorks作者:楊瑞點擊數: 標簽:互聯網開除
我嘗試從幾個角度來分析,在正式分析開始前,我們先把范圍劃定在軟件開發這個圈子里頭,并且對這些問題進行解釋。關于這方面的討論,一般會存在以下幾個誤區

我嘗試從幾個角度來分析,在正式分析開始前,我們先把范圍劃定在軟件開發這個圈子里頭,并且對這些問題進行解釋。關于這方面的討論,一般會存在以下幾個誤區:

  • 將開發階段、測試階段完全剝離。
  • 對測試的理解有些偏差,誤認為測試只是在產品做出來之后,使用它,然后挑毛病,找bug。
  • 誤認為測試只有功能性的校驗。

下頭對這3點逐一解釋:

將開發階段、測試階段完全剝離。

經常有人會問,“為什么互聯網公司不開除測試,轉而讓大眾來測,找到一個bug給100元?”

這個問題有個假設,就是開發階段、測試階段完全剝離開了。開發階段單純地就是開發人員敲代碼,然后出來的東西交給測試人員去做測試。我不否認,現在依然存在這樣的實踐方式。但是,這不是一個好的方式。因為這種流程,把發現bug的時間點推遲了。而發現bug的時間點越靠后,修復它所要付出的代價就越大。

這點應該很容易理解,比如你敲釘子,如果一口氣敲完了才發現,敲歪了,那就得拔出來重新來,可是東西上已經有一個很深的洞了。所以,好的方式是敲一敲,檢查一下,隨時糾正方向,確保前進的大方向是正確的。

軟件更是如此,某個bug可能是在最底層的地方發生的,如果早期發現,定位也容易,修復起來被牽扯到的地方也少,付出的代價可以接受。因為bug的產生可能是多個原因,有可能是功能性的,也有可能是對業務理解的偏差導致開始就做錯了。

如果在產品做出來,發布給最終用戶之后才發現。那個時候再排查到底哪里出了問題,就不是一時半會能做到的了,代價很大。

所以比較好的實踐方式,是由專業的業務人員把要做的東西切割成足夠小的、彼此獨立的、可單獨交付的模塊,開發、測試以及業務人員及時溝通、及時反饋,一個一個小模塊完成,隨時做隨時測。把發現bug的時間點盡量往前推,這樣就可以把修復它的代價降得盡可能小。

當然,小模塊都通過測試,并不意味著所有小模塊拼裝起來組成的系統一定正確,還需要進行層次高一點的集成測試。這就引出了第2點。

測試就是找bug的?

對測試的理解有些偏差,誤認為測試只是在產品做出來之后,使用它,然后挑毛病,找bug。

有這樣的偏差并不奇怪,因為執這樣想法的人太多了,甚至包括一些軟件行業的從業人員。比如有這樣的說法:

開發就是敲代碼的,測試就是找bug的

原文轉自:http://news.hiapk.com/internet/s591fffb7e712.html

国产97人人超碰caoprom_尤物国产在线一区手机播放_精品国产一区二区三_色天使久久综合给合久久97