測試與 Google Play 帳款服務程式庫的整合

您應在整個開發過程中測試整合。若要在開發階段進行測試,建議您讓授權測試人員Play 結帳服務實驗室測試本節中所述的各個情境。

授權測試人員

如要設定授權測試人員,請參閱「透過應用程式授權來測試應用程式內結帳服務」。

使用授權測試人員可享有以下好處:

  • 一般而言,對於未簽署並上傳至 Google Play 的應用程式,Google Play 帳款服務程式庫會處於封鎖狀態。授權測試人員可以略過這項檢查,也就是說,即使應用程式使用具有偵錯簽章的偵錯建構版本,您也可以側載應用程式進行測試,不必上傳新版應用程式。請注意,套件名稱必須與為 Google Play 設定的應用程式相符,且 Google 帳戶必須是 Google Play 管理中心帳戶的授權測試人員。
  • 授權測試人員可以測試付款方式,而不會向測試人員真正收取購買交易的費用。您還可以使用測試付款方式模擬特定情況,例如付款遭拒。圖 1 顯示購買流程中會出現的測試付款方式。
  • 授權測試人員可以快速測試訂閱功能
授權測試人員可以使用測試付款方式
圖 1. 授權測試人員可以使用測試付款方式。

以下是其他有關測試購買流程的詳細資訊:

  • 測試購買交易時,使用在真實交易時相同的應用程式購買流程。
  • 測試購買交易時系統不會計算稅金。
  • Google Play 會在購買交易對話方塊的中央顯示這是一筆測試購買交易。

您可以展開購買交易對話方塊,確認進行購買的帳戶。請注意以下事項:

  • 必須在測試人員的 Android 裝置上使用測試帳戶。
  • 如果裝置上有多個帳戶,需使用下載應用程式的帳戶進行購買。
  • 如果應用程式皆非由這些帳戶下載,則會使用第一個帳戶進行購買交易。

發布應用程式之前,您可以使用 Google Play 測試群組進行其他驗證。例如,您可以利用測試群組讓您的品質確保團隊檢查新版本是否符合條件。

透過測試群組,使用者可以從 Google Play 安裝應用程式,並測試尚未對外發布的應用程式版本。使用者可以使用在 Google Play 中的任何付款方式真正進行購買。

如要透過測試群組測試 Google Play 帳款服務程式庫的整合作業,請執行下列操作:

  1. 將應用程式發布到測試群組。請注意,將應用程式發布到測試群組後,可能需要經過數小時測試人員才能使用該應用程式。
  2. 確認每位測試人員都選擇加入應用程式的測試。在測試的選擇接受網址中,測試人員將看到測試人員的職責説明,以及選擇加入測試的連結。

您可以在搭載 Android 1.6 版或更高版本的任何 Android 硬體裝置上測試整合。裝置必須安裝最新版本的 Google Play 應用程式。關於如何設定裝置以用來開發 Android 應用程式的一般資訊,請參閱使用硬體裝置

Play Billing Lab

Play Billing Lab 是一款 Android 應用程式,可協助開發人員測試與 Google Play 結帳系統的整合。開發人員可透過這項服務輕鬆測試帳單功能、加快整合速度,並更有把握地推出應用程式。你可以前往 Play 商店下載及安裝 Play 帳單實驗室。

您可以在測試期間透過 Play Billing Lab 執行下列操作:

Play Billing Lab 資訊主頁
圖 2. Play Billing Lab 資訊主頁。

測試一次性產品

測試消耗性產品

測試消耗性產品時,請測試各種情況,包括:

  • 購買交易成功,使用者收到商品。對於授權測試人員,您可以使用測試工具,一律核准的付款方式。
  • 在購買交易中付款方式扣款失敗,使用者不應收到商品。對於授權測試人員,您可以使用測試工具,一律拒絕的付款方式。
  • 確保商品可以多次購買。

確認購買交易是否如同處理購買交易中所述,正確獲得確認。如果應用程式未確認來自授權測試人員的購買交易,系統會在 3 分鐘後退款,並以電子郵件通知您該筆交易已取消。您也可以前往 Google Play 管理中心的「訂單」分頁標籤,查看是否有訂單在 3 分鐘後退款。

測試非消耗性產品

非消耗性產品的測試應與消耗性產品相同,但您應驗證在應用程式中是否無法再次購買商品。在適用的情況下,請務必驗證非消耗性產品和消耗性產品的購買交易是否都得到確認,因為系統處理這兩種購買交易的邏輯各不相同。

測試未完成的購買交易

測試未完成的購買交易,其中當購買交易的狀態變爲 PURCHASED 時,則應授予該產品。授權測試人員可以使用兩種測試工具來測試延遲性的付款方式,這種付款方式會在幾分鐘後自動完成或取消。

  1. 使用延遲付款方式「慢速測試卡,稍後再拒絕」進行購買,如圖 3 所示。重新啟動應用程式,確認購買交易並未獲得授權。

    使用遭拒的慢速測試卡測試購買交易
    圖 3.使用遭拒的慢速測試卡測試購買交易。

  2. 使用延遲付款方式「慢速測試卡,稍後再核准」進行購買,如圖 4 所示。稍候片刻,驗證該購買交易是否已獲得授權。

    使用獲得核准的慢速測試卡測試購買交易
    圖 4.使用核准的慢速測試卡測試購買交易。

詳情請參閱處理未完成的交易

測試訂閱項目的特定功能

一次性產品與訂閱項目的購買流程類似,但訂閱項目還存在其他情境,例如訂閲項目續訂成功或續訂遭拒。如要測試續訂,您可以使用「測試卡片,一律核准」和「測試卡片,一律拒絕」兩種授權測試人員可用的付款方式,如圖 1 所示。使用這些付款方式測試訂閱成功以外的情境。

與處理一次性產品的方式類似,您也應依據「處理購買交易」的說明,驗證是否已正確確認購買交易。對於授權測試人員進行的購買交易,如果應用程式未確認該購買交易,系統會在 3 分鐘後退款,並且以電子郵件通知您該交易已取消。您也可以前往 Google Play 管理中心的「訂單」分頁,查看是否有訂單在 3 分鐘後退款。

續訂期

測試性訂閱的續訂速度比實際訂閱更快,且測試訂閱最多可續訂六次,免費試用和新用戶優惠期不計在內。

下表列出各種不同期間的訂閱項目的測試續訂時間。時間為約略值。事件的確切時間可能會有些微差異。若要彌補差異,請在每個訂閲項目的到期日之後呼叫 API 以查看目前的狀態。

正式版訂閱週期 測試訂閲續訂時間
1 週 5 分鐘
1 個月 5 分鐘
3 個月 10 分鐘
6 個月 15 分鐘
1 年 30 分鐘

為方便測試,系統也會縮短以時間計算的訂閱功能 (例如免費試用)。下表列出與以時間為基礎的訂閱功能相關的測試時間範圍:

功能 測試期
購買交易確認 5 分鐘
免費試用 3 分鐘
新用戶優惠期 與訂閱項目測試期相同
寬限期 5 分鐘
帳戶保留 10 分鐘
暫停 (1 個月) 5 分鐘
暫停 (2 個月) 10 分鐘
暫停 (3 個月) 15 分鐘

加快續訂速度

您也可以透過 Play Billing Lab 和授權測試人員,按照下列步驟加快測試訂閱續訂週期

  1. 在「資訊主頁」的「訂閱設定」資訊卡上,按一下「管理」
  2. 選擇要測試的有效訂閱方案。
  3. 按一下「立即續訂」
立即續訂測試用訂閱項目
圖 5. 測試訂閱續訂週期加速。

按一下「立即續訂」按鈕後,測試訂閱方案就會立即續訂。

請注意:

  • 使用「加速續訂」功能前,必須先確認測試訂閱項目,否則系統會取消訂閱。
  • 續訂程序可能需要幾秒鐘才能完成。
  • 價格異動生效時,系統不會顯示「立即續訂」按鈕。
  • 訂閱項目續訂時,無法使用訂閱價格異動功能。

試用優惠

透過 Play Billing Lab 試用優惠測試功能,授權測試人員可以勾選「測試免費試用或新用戶優惠」核取方塊並套用變更,無限次數測試及使用免費試用或新用戶優惠。這樣一來,您就不必建立多個帳戶,測試僅適用於新訂閱者的試用優惠。

測試試用優惠
圖 6. 測試試用優惠。

價格異動

您也可以透過 Play Billing Lab 和授權測試人員測試訂閱價格異動,避免影響其他有效訂閱者,步驟如下:

  1. 在「資訊主頁」的「訂閱設定」資訊卡上,按一下「管理」
  2. 選擇要測試的有效訂閱方案。
  3. 輸入新價格。
  4. 根據測試需求,選取或取消選取「使用者選擇停用」核取方塊。
  5. 按一下「套用」
測試訂閱價格異動
圖 7. 測試訂閱價格異動。

套用變更後,系統只會為測試人員更新下一次續訂的價格。其他有效訂閱者不受影響。 測試訂閱項目適用所有授權測試人員規則。測試人員接著可以測試應用程式,瞭解價格異動觸發的下游程序 (例如價格異動通知)。

規劃測試期時,請注意下列事項:

  • 授權測試人員的續訂時間較短,因此可能來不及為授權測試人員註冊從控制台執行的價格異動。為確保能夠測試價格異動通知和電子郵件,開發人員應在觸發價格異動後,將收費時間延遲至少一小時。
  • 系統並未設定降價通知期。同類群組遷移後不久,使用者就會收到降價通知。這一點在測試期間維持不變。
  • 如果是漲價,測試通知時間的計算方式與實際漲價相同:
    • 經過必要的通知期後,系統會在第一年的帳單週期收費日,首次向使用者收取費用。
    • 通知時間是從首次收費日期往回計算。
    • 不論帳單週期為何,最後通知一律會在收費前 1 分鐘發出。

下表列出多個實際帳單週期的測試帳單週期和測試通知期:

實際基本方案帳單週期 測試帳單週期 測試通知期 (選擇接受和取消訂閱都須在 30 天前通知的地區) 測試通知期 (取消訂閱須在 60 天前通知的地區)
1 週 5 分鐘 5 分鐘 10 分鐘
1 個月 5 分鐘 5 分鐘 10 分鐘
3 個月 10 分鐘 3 分鐘 6 分鐘
6 個月 15 分鐘 2 分鐘 4 分鐘
1 年 30 分鐘 3 分鐘 6 分鐘

測試案例

按一下「顯示/隱藏」展開以下部分,查看您應使用哪些測試情境來驗證訂閲整合作業。

測試待處理交易

您應測試系統是否正確處理未完成的交易,並在購買狀態變為 PURCHASED 時,相應更新授權。授權測試人員可以使用兩種測試工具來測試延遲性的付款方式,這種付款方式會在幾分鐘後自動完成或取消。

  1. 使用延遲付款方式「慢速測試卡,稍後再拒絕」進行購買,如圖 8 所示。重新啟動應用程式,確認購買交易並未獲得授權。

    使用遭拒的慢速測試卡測試購買交易
    圖 8. 使用遭拒的慢速測試卡測試購買交易。

  2. 使用延遲付款方式「慢速測試卡,稍後再核准」進行購買,如圖 9 所示。稍候片刻,驗證該購買交易是否已獲得授權。

    使用獲得核准的慢速測試卡測試購買交易
    圖 9. 使用核准的慢速測試卡測試購買交易。

測試促銷代碼

您可以使用 Google Play 管理中心為自行測試建立促銷代碼。請注意,一個應用程式中所有管理的產品,每一季只能建立 500 個促銷代碼。

您應測試以下兌換促銷代碼的情境:

  • 在應用程式內開啟的購買交易對話方塊中輸入促銷代碼。
  • 在 Google Play 商店應用程式中兌換促銷代碼。
  • https://play.google.com/store 上使用左側導覽面板中的「兌換」按鈕來兌換促銷代碼。

在這些情境下,您應盡可能透過多種方式測試兌換代碼。建議您至少執行以下測試:

  • 在安裝應用程式之前兌換。
  • 應用程式在前景執行時兌換。請注意,在這項測試中,您需要用另一個裝置在 Google Play 商店應用程式中進行測試。請務必測試在應用程式中各種不同畫面兌換的情境。
  • 使用多視窗模式進行兌換,讓系統在這種模式下同時顯示您的應用程式和 Google Play 商店應用程式。

請確保每項測試都能正確偵測商品並通知使用者。

測試不同地區的購買體驗

您可以透過 Play Billing Lab 測試購買流程,也可以不使用這項工具:

測試代理程式

您可以使用 Play Billing Lab Android 應用程式,測試任何區域的購買流程。不過,如要使用 Play 帳款服務實驗室,您必須是授權測試人員。請採用下列測試步驟操作:

  1. 將應用程式結帳服務使用者註冊為授權測試人員。
  2. 使用同一位使用者登入 Play Billing Lab 應用程式。
  3. 選取所需國家/地區,並在 Play Billing Lab 中套用變更。
  4. 在測試中的應用程式啟動購買流程。
測試不同地區的購買體驗
圖 10. 測試不同地區的購買體驗。

測試 (不含)

您也可以在任何國家/地區測試購買流程,不必使用 Play Billing Lab。請採用下列測試步驟操作:

  1. 建立新的 Gmail 帳戶。這個帳戶可在任何國家/地區建立。
  2. 您可以選擇將使用者設為授權測試人員。
  3. 透過 VPN 進入所需國家/地區進行測試。
  4. 啟動購買流程。

您可以清除 Play 商店資料和快取,然後針對想測試的任何國家/地區重複步驟 3 和 4。切換到新的國家/地區後,請清除 Google Play 商店的資料,移除與前一個國家/地區相關的資料。

無論實際上在何處進行測試,都能透過這兩種測試購買交易的方式,測試優惠的地區適用性和使用者體驗。

使用實際付款方式測試購買流程

您可以使用 Play 結帳實驗室 Android 應用程式,以實際付款方式測試購買體驗。

如要測試實際付款方式,請按照下列步驟操作:

  1. 將 Google 帳戶使用者註冊為授權測試人員。
  2. 使用同一位使用者登入 Play Billing Lab 應用程式。
  3. 在 Play Billing Lab 應用程式中啟用實際付款方式。
  4. 重新啟動並啟動測試應用程式中的購買流程。