網易與Google合作發布開源UI自動化測試方案
美西時間 3 月 19 日,在 GDC 開幕***天的 Google 開發者專場,Google 發布了一款由網易研發的 UI 自動化測試方案:Airtest Project。Google 方面評價,這可能是目前世界上***的 Android 游戲自動化測試方案。
AirtestIDE 是一個跨平臺的 UI 自動化測試編輯器,目前已經支持 Android 手游、Windows 端游和 Android App,后續還將支持 iOS 手游。在網易游戲內部,這項技術已經被應用到《夢幻西游》手游、《大話西游》手游、《陰陽師》、《荒野行動》、《終結者 2:審判日》等多款重點產品的測試當中。
具體來說,AirtestIDE 擁有基于圖像識別的 Airtest 框架,使用者無需接入代碼,只要在設備窗口操作手機,代碼即會在代碼窗口自動生成。如果開發者認為圖標不夠精確,還可以通過手動框選圖標或是其他方式來生成模擬輸入語句。
AirtestIDE 還擁有基于 UI 控件搜索的 POCO 框架,可以直接獲取 UI 結構,檢視 UI 控件。它支持 Unity3D、Cocos2dx 等主流游戲引擎及 Android 源生 App,開發者也可以通過擴展 SDK 支持其他游戲引擎或任意 UI 系統。
在實際測試過程中,AirtestIDE 可以為測試人員定位異常測試點,回放每一個操作步驟,***還會生成一份報告,以方便測試人員排查細節錯誤。
此外,AirtestIDE 中錄制和運行的代碼都基于 Python2.7 語言。新手上手比較容易,熟練的開發者也可以通過添加第三方庫和工具增強自己的腳本。同時,這項工具還可以與持續集成相結合,甚至以此技術為基礎搭建云測試平臺。
在以往的測試過程中,開發者往往需要在幾百臺 Android 手機上測試游戲的兼容性。
但通過 AirtestIDE 可視化、易于編輯的界面與功能,開發者只需錄制一次測試腳本即可實現多端運行,這大幅度減少了人力及時間成本。而對于 Google 來說,AirtestIDE 能夠為全世界的 Android 開發者提供一套自動化的游戲測試解決方案,改善 Android 開發的生態環境。這或許也是他們在 GDC 上宣布與網易合作,并在 Firebase Test Lab 中支持這項技術的原因。
網易方面稱,Google 未來還愿意繼續與他們合作,將機器學習應用在游戲的開發與測試方面。目前 Airtest Project 已分享至 Github (https://github.com/AirtestProject)開源使用,開發者也可以至官網(http://airtest.netease.com/)進行查看和下載。