1. 程式人生 > >國內大網際網路公司如何做測試

國內大網際網路公司如何做測試

原文地址:http://www.cnblogs.com/shapherd/p/3274950.html

這裡說的測試不單純是某些測試書上常說的測試, 也包括測試開發。我理解測試的職責主要包括:

  • 2V+EP:validition+verification+Engineer productivity
  • 流程管理: 介紹下傳統流程和敏捷流程

從這兩方面介紹下測試需要做的事情。

validition即正確性檢查


可以概括為以上幾點,每個工作都可以做很多事情

verification+Engineer productivity  效果驗證和工程師生產力(效果級別的目前接觸的不多, 所以放在一起說了)


這裡面的效果驗證一直沒有挖掘出太多可以做的地方, 我針對的是後臺測試相關的, 作為後臺的一個模組或者一些演算法, 很難直接在使用者的層面驗證程式的效果。 所以大多隻是所一些監控。

EP解釋下,就是能節約人力成本的工作。這方面有很多工作可以做, 還可以挖掘更多,通過自動化減少手工的工作;服務化讓qa的工作前置,避免bug發現過晚;通過流程規範化可以在整個專案甚至整個公司對流程達成共識,減少因為流程的不規範導致的線上問題和時間浪費;敏捷可以讓我們持續繼承,持續釋出, 迭代更快,效率更高。

專案流程方面:

   傳統的流程大概可以概括為:調研,立項,需求討論,詳設,詳設評審,編碼,自測,程式碼review,提測,測試設計,測試報告,根據上線單上線,最後線上進行確認和監控。不同的專案可以根據專案級別進行流程裁剪。比如D類專案或者小需求就不需要測試或者詳設,直接自測了就上線等;不同公司略有差異。 上面所有的流程QA都需要參與, 並瞭解自己的職責,怎麼樣能更好的提高效率和避免風險。

  在往敏捷方向發展的過程中,流程差不多是這樣:


從我做的PPT中拷貝過來的,知道這個圖畫的挺醜,請原諒我的偷懶.

這裡面的quick job 和slow job 即為比較快的自動化case, 例如單測,靜態掃描,功能測試等。

slow job表示比較慢的case, 比如效能測試,系統測試,大資料測試等。

沙盒和預上線都是能模擬線上的mini環境,沙盒qa維護和測試使用,預上線環境op維護和預上線驗證使用,預上線也可以成為ab test。  這裡也因不同公司而有差異

因為迭代比較快,qa的壓力也會更大, 整個過程中的自動化建設, 持續繼承的case等都需要完善,才能更好的避免風險,並且加快專案釋出。

很歡迎大家多多交流和提問,包括對上面提到的每個點的質疑。  共同做好質量。 千秋偉業,質在必得

註釋:抱歉這裡說的比較泛,因為點太多, 每個點都可以展開討論, 都寫在這裡可讀性會很差,寫起來也好累, 重點是後者^^。