Skip to content

Latest commit

 

History

History
169 lines (147 loc) · 8.87 KB

QA.md

File metadata and controls

169 lines (147 loc) · 8.87 KB

Suggested Test Sequence

  1. App update

    1. Load the last release of the app and start a wallet. You can confirm the version on Settings -> About.
    2. Update the code to run the latest version, without resetting the wallet.
    3. You should be shown the PIN screen. Unlock the wallet and confirm load succeeded.
    4. Check if the Wallet Service is active for this device. This will be important to understand the context in which the following tests in this guide will be executed
    5. Reset the wallet.
  2. Simple Initialization

    1. Initialize a new wallet (save your words, they will be used later).
    2. When creating a PIN, type the wrong PIN during the confirmation step.
  3. Generate token error Tests

    1. Go to Settings and Create a new Token.
    2. Enter token name Test Token, and click Next.
    3. Enter token symbol TEST, and click Next.
    4. Enter the amount of 100.
    5. The Next button should not be clickable. Also, deposit value and your balance should turn red.
  4. Receive Tests

    1. Go to the Receive Screen and check the QR Code.
    2. Click on the address to copy it.
    3. Click on New address and check that a new address was generated. The QRCode must update.
    4. Click on Share and Cancel.
    5. Click on Payment Request and generate a payment request of 10 HTR.
    6. Pay the Payment Request using another wallet and check the confirmation message.
  5. Send Tests

    1. Go to the Send Screen and check whether the camera loads correctly.
    2. Click on Manual Info.
    3. Type any random text and click Next. It must show an error message.
    4. Enter the address WZ7pDnkPnxbs14GHdUFivFzPbzitwNtvZo and click Next.
    5. Click on the HTR to change the token. Then, select HTR.
    6. Type 100 HTR, click Next, and check the insufficient funds error.
    7. Type 2 HTR, click Next, and check the send summary.
    8. Click on Send and type a wrong PIN Code.
    9. Finally, type a correct PIN Code and check the confirmation.
  6. Transaction History Tests

    1. Open HTR History. Your balance should be 8.00 HTR.
    2. Check that you have two transactions.
    3. Click on any transaction and check the details.
  7. Settings Tests

    1. Go to the Settings Screen. Take note of the network you're connected to ( testnet or mainnet ).
    2. Test Security > Lock Wallet.
      1. Enable biometry
      2. Lock wallet and use biometry.
      3. Disable biometry.
      4. Lock wallet, and it must require you to type your PIN Code.
    3. Test Security > Change PIN.
      1. Close and open the app and check whether the wallet unlocks correctly.
    4. Open About and go back.
    5. Click on Register a Token and check whether the camera loads correctly.
    6. Go to Manual Info, type anything and get an Invalid Configuration string.
  8. Biometry tests (Only close the app on the steps required, this is important)

    1. Test old Biometry mode
      1. Go to unleash and disable the safe-biometry-mode.rollout for this wallet.
      2. Close the app and open, navigate to Settings > Security.
      3. Enable biometry (either Fingerprint, FaceID or TouchID depending on the device)
      4. Send 1 HTR to your own address (it will ask for the biometry instead of pin)
      5. Change the pin
      6. Send 1 HTR to your own address (it will ask for the biometry again)
      7. Close the app and open, it should ask for biometry instead of pin when opening the wallet.
      8. Send 1 HTR to your own address (it will ask for the biometry again)
      9. Disable biometry
      10. Lock wallet, and it must require you to type your PIN Code.
    2. Test safe Biometry mode
      1. Go to unleash and enable the safe-biometry-mode.rollout for this wallet.
      2. Enable biometry (either Fingerprint, FaceID or TouchID depending on the device, it will require your pin)
      3. Check that the "Change PIN" option is no longer on the list.
      4. Create a transaction to send 1 HTR to your own address, when prompted for the biometry press cancel.
      5. It should show an error message, press anywhere outside to close the message.
      6. Try again but this time actually send the 1 HTR.
      7. Close the app and open, it should ask for biometry instead of pin when opening the wallet.
      8. When prompted for the biometry, press cancel, it should show a message that biometry failed.
      9. At the bottom of the screen there should be a "try again" and a "reset wallet" buttons.
      10. Press "try again" and actually unlock the wallet.
      11. Send 1 HTR to your own address (it will ask for the biometry again)
      12. Disable biometry (it will ask for the biometry)
      13. Check that the "Change PIN" option appears on the list.
      14. Lock wallet and it must require you to type your PIN Code.
    3. Test biometry mode migration
      1. Go to unleash and disable the safe-biometry-mode.rollout for this wallet.
      2. Close the app and open, navigate to Settings > Security.
      3. Enable biometry (either Fingerprint, FaceID or TouchID depending on the device)
      4. Close the app and open, it should ask for biometry instead of pin when opening the wallet.
      5. Go to unleash and enable the safe-biometry-mode.rollout for this wallet.
      6. After some moments the app should lock by itself and request biometry to open.
      7. Unlock the wallet and check that the history loads properly.
      8. Go to unleash and disable the safe-biometry-mode.rollout for this wallet.
      9. After some moments the wallet should lock by itself and request a biometry to open.
      10. Unlock the wallet and check that the history loads properly.
  9. Create a new token Tests

    1. Click on Create a new token.
    2. Enter token name Test Token, and click Next.
    3. Enter token symbol TEST, and click Next.
    4. Enter the amount of 100, and click Next.
    5. Click on create token and check the confirmation message.
    6. After the confirmation message, it must show the Token Details.
    7. Click on the configuration string to copy it.
    8. Click on Share and cancel.
    9. Close the token details.
  10. Send and receive the new token

    1. Go to the Send Screen and click on Manual Info.
    2. Enter the address of another test wallet.
    3. Change the token to TEST and continue.
    4. Type 3 TEST and send it.
    5. Go to the Receive Screen and click on Payment Request.
    6. Generate a payment request of 2 TEST.
    7. Pay the Payment Request using your test wallet that has just received the TEST before and check the confirmation message.
  11. Send HTR with QR Code

    1. Generate a payment request requesting 1 HTR from another device
    2. Use the Mobile Wallet QR code scanner to read the QR code from this other device
    3. Pay the Payment Request, the transaction should be successful
  12. Register a token Tests

    1. Go to the Dashboard Screen.
    2. Select the Test Token.
    3. Click on the Token Info and unregister it.
    4. Click on Register Token, click on Manual Info, and paste the Configuration string.
    5. Click on Register Token, and check that the Test Token is back and your balance is 99 TEST.
  13. Reload data

    1. Turn Wi-Fi off until you see the message 'No internet connection.'.
    2. Turn on Wi-Fi and check if the wallet reloads the transactions correctly.
  14. Reset Wallet

    1. Go to Settings and Reset your wallet.
    2. Close and open the app again to make sure that it was properly reset
  15. Import a wallet

    1. Click on Import Wallet.
    2. Type anything random and check the "Invalid words" error message.
    3. Use the words saved before.
    4. Click on Start the wallet, and wait for it to be initialized. Validate your transactions are loaded.
  16. Wallet Service

    1. Go to Settings and copy the Unique app identifier
    2. Go to the unleash dashboard and add it to the list of UserIDs
    3. Repeat all steps, starting from step 2
  17. Whitelabel app

    1. Modify parameters on src/config.js. Set at least _IS_MULTI_TOKEN = false and a new _DEFAULT_TOKEN.
    2. Rebuild the app.
    3. Verify some changes:
      1. No more Dashboard screen (list of tokens and balances). Should go straight to _DEFAULT_TOKEN screen.
      2. On token info screen, there's no more 'Unregister Token' option.
      3. No more register or create token options on Settings screen.
      4. On Send Tokens and Create Payment Request screens, there's no button to select tokens.
      5. [If modified _PRIMARY_COLOR on config.js] Colors must have changed.
  18. Translations

    1. Run make check_po_strict.
    2. We should never have any problems with pt-br translation. We should have all texts translated.
    3. Check if all untranslated texts are known.

Push Notification

Follow the Push Notification QA steps.

Custom Network

Follow the Custom Network QA steps.