自動化測試為什麼不適合用於遊戲領域?
目前國內的遊戲行業,幾乎還沒有比較成功的遊戲自動化測試體系,有少數公司在做,但是效果都不很明顯。為什麼會出現這樣的情況?答案很簡單,因為大規模的自動化測試並不適用於遊戲測試領域。
那麼, 為什麼在傳統軟體測試中大行其道的自動化測試會在遊戲測試領域中出現水土不服呢?
結合傳統軟體與遊戲行業,來跟大家一起分析一下。
一、成本耗費問題
首先我們來談一談錢這個很俗的事,一個團隊要不要做自動化測試,首先要考慮的可能不是技術方案而是我們可以投放到質量上的錢有多少。成本主要來源於2各方面,一是自動化測試工程師的人力成本,二是實現自動化測試開發和維護的時間成本。這兩方面的成本都會最終折算成錢體現在專案總成本上。
一名自動化測試工程師的人力成本基本上等價於2-4名普通的黑盒測試工程師,而在遊戲專案中,黑盒測試工程師是不可或缺的(至於原因,我們下面再講),也就是說自動化測試工程師是額外投入的成本。投入的少,基本不起作用,投入的多,專案成本能不能扛得住也是個問題,尤其是對很多創業團隊而言。
另一個層面,自動化指令碼的開發需要與程式和策劃有深度互動,這種深度互動會耗費其他人員非常多的時間,從而影響了其他人的工作進度,進而影響整個專案的進度。這一點是經常容易被忽視的一個成本。
二、遊戲的感官特徵
遊戲是感官性非常高的一類軟體,與視覺,聽覺,感覺有直接關係,這點與傳統軟體差別較大。測試過程中需要人去直觀的去體驗,比如圖示位置,音訊是否合適,關卡玩起來是不是流暢等等,這些是自動化測試無法替代的,也是上面說的黑盒測試在遊戲專案中不可或缺的原因。
三、迭代速度
遊戲的迭代速度相比傳統軟體要更加快速,尤其是手遊行業。一週一個甚至幾個版本都是正常現象。在這種迭代速度下,自動化測試顯然很難跟得上專案進度,很有可能一個功能已經上線了,自動化指令碼開發還沒有完成。面對這種時間上的不匹配,很多事情變成然並卵了,自動化測試的作用也就相對被拉低了。
四、需求變更速度
在遊戲行業,需求變更的頻度遠遠超過傳統軟體行業。原因有很多,列舉幾點:一是市場變化太快,二是很多設計需要反反覆覆的驗證才能確定哪種體驗更好一些,三是移動網際網路時代產品與使用者的反饋時間被縮短,四是遊戲功能之間的耦合度非常高,開發過程中某些功能的設計會導致其他功能變的不再適用,必須進行重新設計。
那麼問題來了,需求變更如此頻繁,自動化測試怎麼適應?可能昨天寫的指令碼,今天發現就全廢了。
五、缺乏自動化測試意識
幾乎所有的遊戲在前期架構設計上就沒考慮到遊戲自動化測試的需求,所以在遊戲後期介入自動化測試幾乎是不現實的。另外,遊戲開發公司沒有意識到自動化測試的意義,所以也無法開展。除了公司,很多測試者自身能力不足,或者接觸不到遊戲程式碼或其他需求無法滿足,導致無法進行自動化測試。
結合上面的幾點,全面的大規模的自動化測試並不適用於遊戲測試領域,尤其是手遊領域。可能小規模或區域性自動化測試還值得嘗試一下,比如服務端的自動化測試(服務端變更相對不頻繁,與人為感官聯絡不大,邏輯性程式碼較多)。
自動化測試是一劑很好的方藥,對某些病症有很好的療效,但不能被看作是包治百病的大力丸,亂使用只會適得其反。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/69940641/viewspace-2655857/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 自動化測試是什麼?什麼軟體專案適合自動化測試?
- 自動化測試落地為什麼那麼難
- 如何做自動化測試?什麼是自動化測試?
- 自動化測試是什麼?
- 什麼是自動化測試?
- 企業遊戲開發適合用什麼專案管理軟體?遊戲開發專案管理
- ? python 介面自動化 (二)--什麼是介面測試、為什麼要做介面測試 (詳解)Python
- Totoro 在自動化測試領域的深耕與收穫
- 遊戲設計,為什麼不試試2.5D?遊戲設計
- 軟體自動化測試有什麼優勢?自動化測試框架有哪些?框架
- 為什麼很多基於 python 的自動化測試框架要用 excel 寫用例Python框架Excel
- 軟體測試為什麼需要自動化測試框架?權威軟體測試公司分享框架
- 我的遊戲這麼好玩,為什麼賣不動?遊戲
- GAutoNext 全平臺遊戲自動化測試利器遊戲
- Go語言適合用於哪些地方?Go能幹什麼?Go
- 乾貨分享:Totoro 在自動化測試領域的深耕與收穫
- 自動化測試的生命週期是什麼?
- 為什麼要做自動化?
- 領導問,小程式 ui 自動化測試 用什麼工具決定了嗎UI
- 什麼是軟體測試領域的 Flaky test?
- 你們測試介面做自動化的主要用於什麼目的呢?
- 自動化測試系列 —— UI自動化測試UI
- 你為什麼不愛遊戲了?遊戲
- 為什麼遊戲廠商熱衷於製作不實遊戲廣告遊戲
- 如何選擇合適的自動化測試工具?
- 何時適合進行自動化測試?(下)
- 何時適合進行自動化測試?(上)
- 為什麼要學習自動化測試?這篇文章告訴你答案
- 【自動化測試入門】自動化測試思維
- 基於 Htte 的 API 自動化測試API
- 基於Pytest豆瓣自動化測試【1】
- 基於Python豆瓣自動化測試【2】Python
- 關於Web端-UI自動化測試WebUI
- 自動化測試更適合缺陷預防,而不是提高測試效率
- 什麼是軟體測試領域的 false-positive test?False
- 為什麼要進行領域驅動設計? - Vincent
- 自動化會提高測試覆蓋率,那測試覆蓋率是什麼?
- 自動化測試與軟體測試有什麼區別?Python入門教程Python