Smoke Testing Proceedure¶
Setup¶
-
via Command Line USSD Menu (CLI, Bypass AfricasTalking)
Setup
cic-stack/cic-ussd
:assumes you are using a unix environment
bash
git clone https://gitlab.com/grassrootseconomics/cic-internal-integration.git
cd apps/cic-ussd
python3 -m venv .venv
source .venv/bin/activate
pip install -r requirements.txt --extra-index-url=https://pip.grassrootseconomics.net
- Use the CLI
assumes you are in the cic-stack/apps/cic-ussd folder
bash
USSD_SERVICE_CODE=*483*061# python cic_ussd/runnable/client.py --host ussd.grassecon.net --port 443 -c $(pwd)/config 254700123456
alternatively, the
cic-ussd-client
package is also available in ge-dev -
via Phone
- Dial
*483*061#
This is the testing code in Kenya
- Dial
-
via Telegram
- Goto @sarafutest_bot and type
/start
- Goto @sarafutest_bot and type
Setup account¶
Once you have been able to do one of the options above for setup. You will get a message telling you your account has ben setup and to start again.
- Choose language
- Ensure that you can goto end of Language list and back
- Ensure you got 5 SRF tokens
-
Check menu looks like:
Balance 5 SRF
1. Send
2. My Sarafu
3. My Account
4. Help
Send¶
- Send to registered number
- Verify both parties get a receipt SMS
- Check the balance of each user to verify the send happened correctly
- Send Fractional units like 0.6 SRF
- Use the wrong PIN to send once, then use the correct pin
- Recieve SRF from another user
- Send from an account while having insufficient balance
- Make sure the error message is understandable
- Send to number not registered
- Verify that the person sent to gets an upselling message
Change Token¶
- Receive a different token than SRF (e.g. FOO)
-
goto My Sarafu Menu and ensure it looks like:
Choose a number or symbol from your balances:
1. SRF 1.4
2. FOO 148.0
0. Back
11. Next
00. Exit
-
Change to another token (e.g. FOO)
- Ensure that you can goto end of Language list and back
- Send that token to someone else
- Ensure the receipt messages are ok
- Check Statment to ensure it is ok
My account¶
- Goto My Account from main menu
-
Check menu looks like:
My account
1. My profile
2. Change language
3. Check balance
4. Check statement
5. PIN options
0. Back
-
Enter your profile information under My Profile
- Ensure that all the information was set correctly
- Send a transaction to someone and make sure that the receipt shows your name
- Change language
- Ensure you can click next several times and back
- Ensure that other menus work properly in that language.
- Note which language are are choosing for the smoke test report
- Check Statment
- Ensure it reflects your last few transactions
- Check Balance
- Ensure it reflects your last few transactions
Pin Options¶
- Goto Pin Options under My Account
-
Check menu looks like:
Pin options
1. Change my PIN
2. Reset other PIN
3. Guard my PIN
0. Back
-
Change your pin
- Ensure you can send a transaction with new pin
- Set a Guardian (Guard my pin)
- and ensure the guardian can reset your pin
- Use the wrong PIN to send 3 times
- ensure your account is locked
- ensure the guardian can reset your pin
- Remove a Guardian and ensure they can't reset your pin
- Have somone set you as their guardian
- Reset their pin
- Ensure they can make a transaction
Help¶
- Correct helpline 0757628885
Extra Tests¶
Analysis dashboard¶
Dependencies¶
-
Goto graphana website .....<>?
- Adjust filters to be able to see new tokens added.
- Validate some transactions you just made are shown there.
- Download a CSV of the most recent transactions and users
User info¶
Dependencies¶
-
Use CLICADA to verify the transaction history for a user is correct - compare to mini statments on USSD
- Choose Another 2 users and verify their balance on the old Sempo system and new system
Token creation¶
Dependencies¶
- cic-cli
- cic-internal-integration
-
Command Line: Create a new token with demurrage, name, location, description (try a demurage of 2% per minute and a suply of one million to see the effect on the sink account). Ensure the Sink account is accessible from USSD.
- Send thse tokens to a user and verify they can use them on USSD
Batch transfer¶
Dependencies¶
-
Create a CSV list of users and send them each some tokens in batch
- Ensure the users get the correct amount of tokens