本文將說明如何設定及執行正式發布前測試報告。如果您在執行正式發布前測試報告後想瞭解如何解讀結果,請參閱解讀正式發布前測試報告。
當您將應用程式發布到封閉或公開測試,系統就會自動產生正式發布前測試報告,協助您主動找出問題,再向使用者推出應用程式。這份報告包含以下項目的測試:
- 穩定性問題
- Android 相容性問題
- 效能問題
- 無障礙功能問題
- 安全漏洞
- 隱私權問題
正式發布前測試報告的運作方式
在您上傳並發布測試版 Android App Bundle 後,系統就會在 Test Lab 的一組 Android 裝置上安裝該項目,然後自動啟動您的應用程式,並執行數分鐘的檢索作業。檢索器會執行打字、輕觸和滑動等基本操作。您也可以提供自訂測試或測試帳戶憑證,讓檢索器執行相關操作。
檢索完成後,我們會將您的結果彙整在正式發布前測試報告中,也會從所有裝置上解除安裝您的應用程式。
評估您的應用程式是否適用正式發布前測試報告
只要我們能夠安裝及「檢索」您的應用程式,就表示該應用程式適用正式發布前測試報告。不過,某些應用程式可能需要小幅修改程式碼,常見的例子包括要求進行國家/地區驗證或安裝驗證的應用程式。詳情請參閱我們整理的常見問題。
請注意,測試裝置無法針對沒有主要啟動活動的應用程式 (包括啟動器、小工具、鍵盤和錶面) 執行測試。
執行正式發布前測試報告
測試應用程式如要為您的應用程式產生正式發布前測試報告,請將應用程式發布到封閉或公開測試群組。
只要將應用程式發布到測試群組,您就會自動收到相關的正式發布前測試報告,除非您選擇不採用此功能。上傳應用程式套件後,通常一小時內就能收到測試結果。不過在某些情況下,上傳後可能需要經過幾個小時才能收到結果。
如果您想在系統產生正式發布前測試報告時收到電子郵件通知,請按照下列步驟操作:
當您將應用程式發布到封閉或公開測試群組時,系統就會自動產生正式發布前測試報告。如要為應用程式停用所有正式發布前測試報告,請按照下列步驟操作:
自訂測試
您可以自訂測試,讓正式發布前測試報告收錄的資料更全面,而且與應用程式更相關。
步驟 1:如果應用程式設有登入畫面,請提供測試帳戶憑證
如果應用程式設有登入畫面,而且您想讓檢索器測試登入程序或登入後才能存取的內容,就需要提供帳戶憑證。
注意:若應用程式支援「使用 Google 帳戶登入」(可讓檢索器透過這項功能自動登入),或您已在「應用程式內容」頁面提供憑證,則不需要提供憑證。
以下是關於測試憑證的重要注意事項:
- 您提供的憑證僅用於測試。
- 雖然我們會盡力確保測試憑證的安全,但仍建議您不要將任何正式憑證加入正式發布前測試報告,而是另外準備好一組測試帳戶專用的使用者名稱和密碼。
- 憑證只能自動插入使用標準 Android 小工具的 Android 應用程式中。使用 OpenGL 的應用程式無法透過憑證來顯示自訂控制項,而使用 WebView 的應用程式也無法藉此建立網頁式驗證流程。
- 如果您的應用程式支援「使用 Google 帳戶登入」功能,Google 會自動登入。
- 開啟 Play 管理中心。
- 選取應用程式。
- 在左選單中依序選取「測試」>「正式發布前測試報告」>「設定」。
- 在「測試帳戶憑證」部分,選取「提供憑證」。
- 輸入下列資訊:
- 使用者名稱:與測試帳戶相關聯的使用者名稱。
- 密碼:與測試帳戶相關聯的密碼。
- 按一下 [儲存]。除非您進行修改,否則往後的測試一律會使用這些憑證。
- 開啟 Play 管理中心。
- 選取應用程式。
- 在左選單中依序選取「測試」>「正式發布前測試報告」>「設定」。
- 進行所需變更:
- 編輯憑證:在「測試帳戶憑證」部分的「使用者名稱」和「密碼」欄位,輸入新的憑證資訊。
- 移除憑證:在「測試帳戶憑證」部分,選取「不提供憑證」。
- 注意:如果移除應用程式的測試憑證,日後進行測試時就需要先新增憑證,檢索器才能登入應用程式。
- 按一下 [儲存]。除非您進行修改,否則往後的測試一律會使用這些憑證。
步驟 2:提供 Robo 指令碼或遊戲迴圈
如要控管檢索器在測試應用程式時採取的步驟,可以提供 Robo 指令碼或遊戲迴圈。
提供 Robo 指令碼以自訂 Java 應用程式的測試路徑您可以提供 Robo 指令碼來執行特定操作 (例如測試一般使用者歷程或應用程式新區段),藉此控管檢索器在測試應用程式時採取的步驟。
當您執行附有指令碼的測試時,檢索器會先執行您預先寫好的動作,再照常檢索應用程式。
如何將指令碼上傳到正式發布前測試報告:
- 在 Android Studio 使用 Firebase 工具記錄指令碼 (依序點選「Android Studio」>「Tools」>「Firebase」>「Test Lab」>「Record Robo Script」)。如需瞭解詳情,請前往 Firebase 說明中心。
- 注意:您不需要 Firebase 帳戶,也能建立 Robo 指令碼。
- 備妥指令碼後,請開啟 Play 管理中心。
- 選取應用程式。
- 依序選取「測試」>「正式發布前測試報告」>「設定」。在「控管正式發布前測試報告對應用程式的測試方式」的部分中,上傳您的指令碼。您可以直接拖曳檔案,也可以選取 [上傳]。
- 按一下 [儲存]。
如要測試使用 OpenGL 的遊戲或應用程式,您必須提供遊戲迴圈,才能取得詳盡的正式發布前測試報告。遊戲迴圈是用於定義您希望檢索器執行的操作。您可以在同一應用程式中測試多個遊戲迴圈。
如何在正式發布前測試報告中使用遊戲迴圈:
- 修改遊戲,讓遊戲能執行下列作業:
- 啟動迴圈
- 執行迴圈
- 關閉迴圈 (選用)。您可以在開發環境中做出這些改動。如需瞭解詳情,請前往 Firebase 說明中心。
- 注意:您無須具備 Firebase 帳戶,也能在正式發布前測試報告中使用遊戲迴圈。
- 將含有遊戲迴圈的遊戲版本發布到封閉或公開測試群組。檢索器會自動偵測並執行遊戲迴圈。
步驟 3:利用深層連結自訂測試起點
如要測試額外的應用程式進入點,最多可以在正式發布前測試報告中加入三個深層連結。
檢索器會先照常運作幾分鐘,接著關閉應用程式並分別存取各個深層連結,進一步執行 30 秒的檢索作業。和平常找到的問題相同,額外檢索期間發現的所有問題都會列入報告中。
如要瞭解如何針對應用程式建立及測試深層連結,請造訪 Android 開發人員網站。
步驟 4:查看特定語言的測試報告
如果想查看特定語言的測試結果,可以在「正式發布前測試報告設定」頁面上指定語言偏好設定。最多可選取五種語言。
提示:系統會在您上傳測試版應用程式套件時自動產生正式發布前測試報告,因此只能在初次測試完成後新增語言偏好設定。
設置語言偏好設定- 開啟 Play 管理中心。
- 選取應用程式。
- 在左選單中依序選取「測試」>「正式發布前測試報告」>「設定」。
- 在「測試應用程式的特定語言版本」下方,選取「+ 新增語言」。
- 選取最多 5 種語言。日後的測試只會顯示這些語言的測試結果。
- 注意:如果您並未選取任何語言,系統將自動選取應用程式安裝次數最多的語言。
- 按一下 [儲存]。
查看正式發布前測試報告
系統產生正式發布前測試報告後,您可以查看測試摘要,其中包括測試期間發現的錯誤、警告和不嚴重問題的數量 (按問題類型區分)。此外,這份報告也會根據應用程式的測試結果提供發布建議。
查看正式發布前測試報告摘要如何查看正式發布前測試報告摘要:
- 開啟 Play 管理中心。
- 選取應用程式。
- 依序選取「測試」>「正式發布前測試報告」>「總覽」。
- 檢閱各個部分的資訊:
- 穩定性
- 效能
- 無障礙功能
- 安全性和信任
- 如有任何部分顯示問題,選取「顯示摘要」即可展開這個部分。
- 選取「查看詳細資訊」,瀏覽更詳盡的問題資訊。
- 如要查看過往的正式發布前測試報告,請捲動至頁面底部「報告詳細資料」部分的表格。
注意:如果系統顯示「測試中」,表示最近一次測試尚未結束;如果您最近一次的測試無法執行,系統會顯示「測試失敗」。如要執行別的測試,請發布其他應用程式套件。
如何查看正式發布前測試報告的詳細結果:
- 開啟 Play 管理中心。
- 選取應用程式。
- 依序選取「測試」>「正式發布前測試報告」>「詳細資訊」。
- 檢閱「穩定性」、「效能」、「無障礙功能」、「螢幕截圖」以及「安全性和信任」分頁。每個頁面都會顯示最近一次測試的完整詳細資料,包括堆疊追蹤、螢幕截圖和圖表。
注意:如果系統顯示「測試中」,表示最近一次測試尚未結束;如果您最近一次的測試無法執行,系統會顯示「測試失敗」。如要執行別的測試,請發布其他應用程式套件。
常見問題
應用程式測試
測試需要多少時間?上傳應用程式套件後,通常一小時內就能收到測試結果。不過在某些情況下,上傳後可能需要經過幾個小時才能收到結果。如果系統在兩天後仍未產生報告,請嘗試重新上傳成果,以便觸發新的報告。
在啟動時進行驗證的應用程式
對於進行國家/地區驗證的應用程式,我可以執行正式發布前測試報告嗎?如果您願意小幅修改程式碼,還是可以取得正式發布前測試報告。
測試裝置位於美國。如果應用程式使用地理位置功能,或依據國家/地區設有內容限制,測試裝置只能顯示所在地點的適用內容。
如需根據測試裝置所在地以外的地理位置測試應用程式,可以發布移除地區限制的應用程式套件用於測試。以下兩種做法都能偵測 Test Lab 是否正在執行正式發布前測試報告:
- 將 Firebase Test Lab 總覽列出的 IP 位址區塊加入許可清單。
- 新增系統變數,確認 Test Lab 的修改檢測設備測試行為功能是否正在運作。
如果應用程式會檢查裝置是否對 Android 系統具有特殊控制權限 (Root 權限),就不在測試平台的支援範圍內。
提供廣告或購買選項的應用程式
我的應用程式有廣告,要如何確保正式發布前測試報告的測試數據不會計入我的應用程式曝光次數和點擊次數 (我的廣告聯播網可能會偵測到這些數據或對此感到不滿)?Google Ads 已排除來自正式發布前測試報告位址範圍的流量。針對其他廣告聯播網,您必須指定要排除的 IP 位址範圍。
如要進一步瞭解如何減少自動應用程式測試期間衍生的不當廣告收益,請參閱 Google Developers 網站中的相關說明。
測試裝置無法在測試過程中進行購買交易。如果您的應用程式提供訂閱項目或應用程式內產品,讓使用者存取應用程式的部分內容,那麼系統可能無法進行全面性的測試。
其他應用程式行為
我的程式碼有經過模糊處理 (Java) 或精簡化 (原生),我還是可以執行正式發布前測試報告嗎?可以。無論程式碼是否經過模糊處理或精簡化,系統都會執行正式發布前測試報告。
不過,如果您的程式碼經過模糊處理或精簡化,而且測試期間發生當機或 ANR 情形,這些情形的堆疊追蹤也會經過模糊處理或精簡化。為了讓系統更容易對堆疊追蹤進行偵錯,建議您上傳符號化或去模糊化檔案。
如要進一步瞭解如何上傳符號化或去模糊化檔案,請參閱這篇文章。
不可以。測試平台不支援為裝置預先載入特定媒體或預先安裝特定應用程式。
不過,如果您想將應用程式搭配預先載入的資料進行測試,可以先將媒體檔案嵌入測試版應用程式的應用程式套件,再進行發布。
如果應用程式正在進行公開測試或已發布正式版本,系統會將正式發布前測試報告使用的 ID,視為已授權用於該應用程式。
若應用程式並未進行公開測試,您也尚未發布有效的正式版應用程式套件,該應用程式就無法通過授權檢查。您仍會收到正式發布前測試報告結果,但應用程式將處於未授權的狀態。如要測試這類應用程式,您可以先在封閉測試版應用程式中停用授權服務,再進行發布。
根據預設,測試裝置會固定以直向畫面模式執行測試。不過,如果您的應用程式鎖定為橫向模式,您應該可以透過這個模式觀看影片及瀏覽螢幕截圖。
選擇裝置
Google 如何決定要用哪些裝置測試我的應用程式?我們會選擇生態系統中涵蓋率較廣的裝置執行測試,並將裝置使用者人數、當機頻率、螢幕解析度、製造商和 Android OS 版本等因素納入考量,因此選擇的測試裝置可能不盡相同。
如果您已從應用程式資訊清單的指定目標中排除部分裝置,正式發布前測試報告也會將這些裝置排除在測試之外,但不會將任何額外裝置列為應用程式的指定目標。
正式發布前測試報告採用 Firebase Test Lab 的分析技術。如要自訂測試裝置,建議您自行在 Firebase 主控台中執行測試。
可以。我們會在模擬器中執行應用程式,並按照使用實體裝置的方式完成檢索作業。
我們的裝置組合涵蓋手機、平板電腦、Wear OS 裝置,以及 Chromebook 等電腦裝置。您無法直接在 Android Auto 或 Android TV 裝置上測試應用程式。
我們的裝置組合包含 Android 9 以上版本的裝置。