1. 程式人生 > >為測試賦能,騰訊WeTest探索手遊AI自動化測試之路

為測試賦能,騰訊WeTest探索手遊AI自動化測試之路

面數據 利用 ima 動畫 作者 就會 安全 嘗試 機械

作者:周大軍/孫大偉, 騰訊後臺開發 高級工程師
商業轉載請聯系騰訊WeTest獲得授權,非商業轉載請註明出處。


WeTest導讀

做好自動化測試從來不件容易的事情,更何況是手遊的自動化測試,相比傳統的APP,手遊畫面純OPENGL繪制無可識別控件,且界面動畫多、隨機性大。舉個例子,拿新手引導來說,手遊中新賬號試玩會有一系列的新手引導,當新手引導過程通過之後,後面就不會再出現,但當賬號升級到一定等級,又會出現新玩法的新手引導。且手遊的版本叠代非常快,平均1-2周就會出一個版本,界面也經常發生變化,這些都給自動化測試帶來很多障礙。

為解決手遊自動化測試的這一瓶頸,騰訊WeTest依托騰訊人工智能研究的技術優勢,率先嘗試將基於深度學習的人工智能應用於手遊測試當中,開啟AI手遊自動化測試時代。2017 ChinaJoy WeTest展臺上火爆的貪吃蛇AI互動展示,正是這一探索的成果之一。

AI自動化測試系統,開啟手遊測試新風向

騰訊遊戲的QA團隊,對於更高質量手遊的追求從未停歇過,如今AI大火,技術上也有比較大的進步以及成熟的框架,這也給手遊的自動化測試帶來很多新的可能性,目前騰訊內部也有不少團隊在積極研究手遊的AI自動化測試,大體上分為兩種,一種是讓AI模型可以測試絕大多數的手遊;另一種則是基於特定的手遊做更細更有針對性的AI測試模型。

1、AI自動化測試系統的處理過程

手遊自動化測試最重要的核心,在於如何讓電腦更智能的模擬真人的操作行為。一套基於深度學習的AI自動遊戲系統,可以通過叠代訓練,讓機器自己做出動作決策,從而完成一系列的遊戲操作。

AI自動遊戲系統主要由4部分組成,說明如下:
● 處理模塊1:負責和手機交互,UI自動化操作,管理,結果記錄和存儲等;
● 處理模塊2:負責遊戲UI界面的識別;
● 處理模塊3:負責識別一局遊戲內的物體和數據等;
● 處理模塊4:負責決策玩遊戲的動作決策,采用深度強化學習算法;

AI自動遊戲系統整體框架如下圖:
技術分享

以天天酷跑為例,看AI自動化測試實戰演練

以天天酷跑遊戲的AI自動化測試為例,整個測試過程主要分為前期訓練、接入測試、性能與結構反饋三個步驟:

前期訓練
前期訓練得到神經網絡的權值(文件),後面測試只需要讓神經網絡加載這個權值(文件)就可輸出學習到的動作決策,達到自動玩遊戲的目的。

系統采用特定算法對模型進行訓練。訓練結果如下圖,橫坐標是玩的遊戲局數,縱坐標是一局跑的裏程數。整個訓練過程共進行了上萬局遊戲,隨著訓練的次數增多,每局的裏程數也在上升。
技術分享

接入測試
天天酷跑遊戲運行在WeTest雲真機上,自動化進程和雲真機交互,實時抓取遊戲畫面數據。

進入遊戲後,檢測進程識別遊戲畫面中的物體和數據,例如天天酷跑中的臺階、坑、柱子等物體信息以及距離等數值信息。遊戲畫面和識別出的物體和數據最終發給深度學習進程作為輸入,深度學習進程的輸出就是執行玩遊戲的動作,例如天天酷跑中就是“下蹲”、“起身”、“跳躍”等。

一局遊戲結束後,再重復上述的過程進行下一局測試。
技術分享

性能和結果數據
AI在玩遊戲的同時,系統可以獲取手機的性能數據和遊戲的結果數據,並在網頁端進行展示。

如下圖所示,每一行對應天天酷跑一局遊戲,分別展示了手機CPU利用率,內存使用量,電池電量,溫度,玩一局跑的裏程數和遊戲時間以及死亡前的遊戲畫面。
技術分享

除了天天酷跑,AI自動遊戲系統已接入騰訊多項精品遊戲的測試工作。

騰訊WeTest攜AI自動化手遊測試,為遊戲創造更大價值

使用AI自動遊戲系統進行手遊測試,遊戲廠商可以借助AI的智能輕松實現類似於人工測試時在真機上玩遊戲的過程,節省大量的測試人力成本。

隨著人工智能技術的飛速發展,簡單機械的遊戲測試工作必將逐步向自動化、智能化轉移。騰訊WeTest作為遊戲質量的守護者,將為遊戲開發者們提供操作更加便捷高效的AI自動化測試方案,讓遊戲開發者能更多地專註於遊戲創意性、可玩性、操作習慣等更需要創意的環節,為遊戲創造更大的價值。


關於騰訊WeTest (wetest.qq.com)

騰訊WeTest是騰訊遊戲官方推出的一站式遊戲測試平臺,用十年騰訊遊戲測試經驗幫助廣大開發者對遊戲開發全生命周期進行質量保障。騰訊WeTest提供:適配兼容測試;雲端真機調試;安全測試;耗電量測試;服務器性能測試;輿情分析等服務。

點擊地址:http://wetest.qq.com/立即體驗!

為測試賦能,騰訊WeTest探索手遊AI自動化測試之路