Google現在除了開源Android模擬器容器腳本(Emulator Container Script),還推出了Android模擬器下載腳本以及Android模擬器Docker映像檔產生器,強化測試環境的可部署性,並且增加開發者深入測試環境並診斷錯誤的能力,以提升測試的可除錯性。

Google提到,開發人員經常會在提交程式碼之前,使用Android模擬器來測試最新的程式碼更改,而且越來越多開發人員,開始將模擬器用在持續整合系統中,執行一系列的自動化測試,而為了更良好地支援這樣的使用案例,Google發布了一系列解決方案。首先是開源了Android模擬器容器腳本,這是一組最小的腳本,可在Docker等各種容器中執行模擬器。

而針對可部署性問題,Google推出了Android模擬器下載腳本,以及Android模擬器Docker映像檔產生器。Google提到,由於Android和Android模擬器都支援多種的硬體和軟體配置,這樣的多樣性可能會使開發者對配置環境感到混亂,而Android模擬器下載腳本,則可以提供最新的模擬器映像檔列表,以及模擬器的二元檔案,開發者可以將其和現有的持續整合系統整合。未來Google還會增加已遭棄用的版本,讓開發者可重新呈現歷史版本測試結果。

Android模擬器Docker映像檔產生器可以方便產生Android模擬器執行的環境,Google提到,Android系統映像檔以及模擬器都只是測試的一部分,因為環境設定、驅動程式以及預先安裝的系統相依項目,也影響著應用程式執行的結果,而現在Google將環境相關的部署,以Docker映像檔產生器的方式提供。目前Docker映像檔產生器只能在Linux上執行,未來Google還會增加MacOS與Windows主機的支援。

另外,對於應用程式開發的可除錯性改進,Google提到,當模擬器或是執行的測試故障時,目前難以深入執行的環境並診斷錯誤發生原因,因為診斷通常需要直接操作虛擬裝置,為此,Google現在提供了兩種操作的機制ADB以及遠端串流,在ADB的方式,系統允許所有諸如logcat和殼層的指令,直接從Docker訪客轉送到主機中,目前使用的埠口為5555,Google提到他們還需要收集更多的回饋,來決定跨不同容器隔離埠口的最佳方法。

而遠端串流的方法,開發者可以在容器中執行模擬器,而在容器中執行的模擬器,可以更簡單地使用ADB指令為難以解決的問題除錯,開發者可以使用提供WebRTC和gRPC功能的瀏覽器存取模擬器,WebRPC能用來串流影像,而gRPC則能將滑鼠和鍵盤事件發送到模擬器中。

Google也提醒,使用遠端串流需要特別注意,一旦服務啟動,任何可以連接到電腦的人,都可以透過連接埠80/443和模擬器互動,因此在公共伺服器上測試要特別小心。

熱門新聞

Advertisement