pay-ui

Test Plan: Pay UI

This test plan is not supposed to be complete; use it to guide your manual testing so they don't miss big functional areas that are part of the component. This should be used as guideline to inspire the exploratory testing which should be adapted smartly based on the real content of a merge proposal.

  • Install latest (devel-proposed) image on phone
  • Install freshly built click package for the Merge Proposal.

No Account

  • Find an app available for purchase in the store, by searching for "price:2.99" (capitalization is important, and other values may be used as well).
  • Tap on the "Purchase" button in the Preview.
    • Verify the "Ubuntu One" log-in/register page is opened.
    • Log-in or Register your "Ubuntu One" account.
    • Verify the Payment page is shown.
    • Verify the "Cancel" and "Buy now" buttons, and the "Add Credit/Debit Card" link are shown.
    • Proceed through the tests below which continue from this state.

Existing Account

  • Find an app available for purchase in the store, by searching for "price:2.99" (capitalization is important, and other values may be used as well).
  • Tap on the "Purchase" button in its Preview.
    • Verify the Payment page is shown.
    • Verify the "Cancel" and "Buy now" buttons, and the "Add Credit/Debit Card" link are shown.
    • Proceed through the tests below which continue from this state.

Security Information
  • Continues from the "No Account or "Existing Account" flows
    • Verify a lock icon is shown in the application header.
    • Tap the lock icon.
    • Verify a pop-up is shown with information about the site.
    • Press the "Cancel" button.
    • Verify the application is closed and you are returned to the preview.
    • Verify the "In progress" item in the Preview returns to the price button.

Security Information: Paypal payment
  • Continues from the "No Account or "Existing Account" flows
    • Select the "Paypal" payment method.
    • Tap the "Buy now" button.
    • Verify you are taken to the Paypal site.
    • Verify a lock icon is shown in the application header.
    • Tap the lock icon.
    • Verify a pop-up is shown with information about the site.
    • Scroll to the bottom of the Paypal page and tap the "Return to the Ubuntu store" link.
    • Verify the application is closed and you are returned to the preview.
    • Verify the "In progress" item in the Preview returns to the price button.

Security Information: Add Credit/debit card
  • Continues from the "No Account or "Existing Account" flows
    • Tap the "Add credit/debit card" link.
    • Verify the Add Credit Card webpage is displayed embedded in the application.
    • Verify a lock icon is shown in the application header.
    • Tap the lock icon.
    • Verify a pop-up is shown with information about the site.
    • Tap the "Cancel" button at the bottom of the page.
    • Verify that you are returned to the checkout page.
    • Press the "Cancel" button.
    • Verify the application is closed and you are returned to the preview.
    • Verify the "In progress" item in the Preview returns to the price button.

Cancel button flow
  • Continues from the "No Account" or "Existing Account" flows
    • Tap the "Cancel" button
    • Verify the application is closed and you are returned to the preview.
    • Verify the "In progress" item in the Preview returns to the price button.

Buy Now button flow: Logged in
  • Continues from the "No Account" or "Existing Account" flows
    • Select the "Paypal" payment method.
    • Tap the "Buy Now" button
    • Verify you are taken to the web flow for paying via Paypal.
    • Choose the "Cancel" option.
    • Verify the application is closed and you are returned to the preview.
    • Verify the "In progress" item in the Preview returns to the price button.

Buy Now button flow: Timeout passed, invalid password
  • Open the "System Settings" app.
    • Change the "Lock when idle" setting to "Never" under "Battery" settings.
  • Continues from the "No Account" or "Existing Account" flows
    • Wait for more than 15 minutes.
    • Select the "Paypal" payment method.
    • Tap the "Buy Now" button.
    • Verify that you are prompted for the "Ubuntu One" account password.
    • Type in an incorrect password for the registered account.
    • Tap the "Buy Now" button.
    • Verify a message appear under the password text field indicating the password was incorrect.
    • Press the "Cancel" button.
    • Verify the application is closed and you are returned to the preview.
    • Verify the "In progress" item in the Preview returns to the price button.

Buy Now button flow: Timeout passed, valid password
  • Open the "System Settings" app.
    • Change the "Lock when idle" setting to "Never" under "Battery" settings.
  • Continues from the "No Account" or "Existing Account" flows
    • Wait for more than 15 minutes.
    • Select the "Paypal" payment method.
    • Tap the "Buy Now" button.
    • Verify that you are prompted for the "Ubuntu One" account password.
    • Type in the correct password for the registered account.
    • Tap the "Buy Now" button.
    • Verify you are taken to the web flow for paying via Paypal.
    • Choose the "Cancel" option.
    • Verify the application is closed and you are returned to the preview.
    • Verify the "In progress" item in the Preview returns to the price button.

Add credit/debit card flow: Cancel adding card
  • Continues from the "No Account" or "Existing Account" flows
    • Tap the "Add credit/debit card" link.
    • Verify the Add Credit Card webpage is displayed embedded in the application.
    • Tap the "Cancel" button at the bottom of the page.
    • Verify that you are returned to the checkout page.
    • Press the "Cancel" button.
    • Verify the application is closed and you are returned to the preview.
    • Verify the "In progress" item in the Preview returns to the price button.

Add credit/debit card flow: Add a card
  • Continues from the "No Account" or "Existing Account" flows
    • Tap the "Add credit/debit card" link.
    • Verify the Add Credit Card webpage is displayed embedded in the application.
    • Enter valid card information.
    • Tap the "Add card" button at the bottom of the page.
    • Verify that you are returned to the checkout page.
    • Verify the card added is now in the payment methods option list.
    • Press the "Cancel" button.
    • Verify the application is closed and you are returned to the preview.
    • Verify the "In progress" item in the Preview returns to the price button.

Invalid token handling
  • Enable use of the staging server:
    • Log in to the phone with "phablet-shell" and run /usr/lib/*/pay-service/setup-staging.sh
  • Add the staging Ubuntu One account on the phone, via Accounts in System Settings.
  • Go to https://login.staging.ubuntu.com/+applications and delete the "Ubuntu One @ ubuntu-phablet" token.

  • Open the store scope on the phone.
  • Search for a priced app available for purchase.
  • Open the app's preview, and then tap on the button with the price to purchase the app.
  • Ensure the Ubuntu One sign on and register page opens up.
  • Sign in again.
  • Ensure you are returned to the pay interface, with your payment methods shown.
  • Press the "Cancel" button.
  • Verify the application is closed and you are returned to the preview.
  • Verify the "In progress" item in the Preview returns to the price button.

Purchase in other supported currencies
  • NOTE: Since the server is not yet returning different currencies based on your geoip (LP#1375281), you can force other currencies via an interim shell script.

  • Enable use of the staging server:
    • Log in to the phone with "phablet-shell" and run /usr/lib/*/pay-service/setup-staging.sh
  • Put in the device the shell script shown here: http://pastebin.ubuntu.com/8485727/

  • Run it like this: "./enable-purchases-in EUR"
  • Search for "delta" in the Ubuntu Store (Delta is the only app in staging with prices in EUR, GBP and USD so far).
  • Check that the result price is shown in Euros
  • Open the preview
  • Check that the preview price is shown in Euros
  • Click on the item price
  • Check that the payment screens show the price in Euros
  • Check that the credit cards used for USD are not shown
  • Add a credit card for Euros
  • Check that a purchase can be completed

Even more currencies
  • Try some other supported currency: GBP. It should work just like EUR
  • Try a non-supported currency, eg: ARS. It should use USD instead

Process/Merges/TestPlan/pay-ui (last edited 2015-02-09 15:26:13 by pool-108-17-154-195)