This document contains guidelines regarding ConnectMe regression testing spreadsheet.
1 Build and run docker image
docker build -f Dockerfile -t connectme_regression .
docker run -v $(pwd):/connectme_regression -i -t connectme_regression
2 Run scripts inside the container.
-
Evernym Connection Invitation- It implies using of proprietary Evernym protocol for connection establishing. Use one of available Verity UI portals. Please note that Verity UI and ConnectMe must point to the same environment.- QR - Create a new connection and push
Generate QR Codebutton. - Deeplink - Create a new connection and push
Send Linkbutton.
- QR - Create a new connection and push
-
Aries Connection Invitation- It implies using of Aries Protocol for connection establishing. Useverity-connection.jstest script (install dependenciesnpm install axios uuid).- Run NGrok
ngrok http 1338 - Set endpoint into
ngrokEndpointvariable. - Update
testCasefor corresponded test case. - Update
phoneNumberfor your phone number.
-
QR:
const testCase = { relationship: 'qr', connection: 'connection', } -
Deeplink:
const testCase = { relationship: 'sms', connection: 'smsConnection', }
- Run NGrok
-
Aries Out-of-Band Invitation- It implies using of Aries Out-of-Band Protocol for connection establishing. Useverity-connection.jstest script.- Run NGrok
ngrok http 1338 - Set endpoint into
ngrokEndpointvariable. - Update
testCasefor corresponded test case. - Update
phoneNumberfor your phone number.
-
QR:
const testCase = { relationship: 'qr', connection: 'outOfBand', } -
Deeplink:
const testCase = { relationship: 'sms', connection: 'smsOutOfBand', }
- Run NGrok
- Use
faber_credential_cases.pyscript to cover the following test cases:Accept a credential with 5-10 attributesAccept a credential with 100 attributesAccept a credential with an image attachmentAccept a credential with a PDF attachmentAccept a credential with a .docx attachmentAccept a credential with a .cvs fileAccept a credential with multiple attachmentsReject a credential offer
- Use Verity-SDK OOB sample
Scan a QR code and view a credential offer for new connection (Aries OOB)Scan a QR code and view a credential offer for reusing existing connection (Aries OOB)Reject a OOB credential offer
-
Use
faber_proof_cases.pyscript to cover the following test cases:Fulfill a proof with restrictions to 1 issuer DIDFulfill a proof with restrictions to a list of 100 issuer DIDsFulfill a proof with <, >, <= and >= predictaesFulfill a proof with an image attachmentFulfill a proof with multiple attachmentsFulfill a proof with 5-10 attributesFulfill a proof with 100 attributesFulfill a proof with a self-attested attributeFulfill a proof with case-insensitive attributesProof request contains grouped attributes (must be fullfilled from the same credential)The proof request contains an attribute that can be filled from multiple credentials.The proof request contains an attribute that was filled from credential and can be self-attestedShow when I am missing required attributesShow when I am missing required group of attributesShow when I am missing required predicateReject a proof request
-
Use
faber_restrictions.pyscript to cover the following test cases:Fulfill a proof with restrictions to a specific CredDefFulfill a proof with restrictions to a specific Schema
-
Scan a QR code and view a proof request for new connection (Aries OOB)Scan a QR code and view a proof request for reusing existing connection (Aries OOB)Reject a OOB proof request
You can use any resource: python scripts / verity demos / try.connect.me
Answer question for Aries connection- usefaber_question_cases.pyscript.Answer question for Evernym connection- usefaber_commitedanswer_1.0.pyscript. Change the number of items invalid_responsesarray for different count of option.
-
Evernym connection invitation- usefaber_redirect_1.0.pyscript.- Scan and accept invitation.
- Scan the same invitation -
Connection exists is shown - Scan and accept the second invitation -
Connection exists is shownand state in script get redirected
-
Aries Out-of-Band Invitation- Useverity-connection.jstest script.-
Run NGrok
ngrok http 1338 -
Set endpoint into
ngrokEndpointvariable. -
Update
testCasefor corresponded test case. -
Update
phoneNumberfor your phone number. -
Scan and accept invitation.
-
Scan the same invitation -
Connection exists is shown -
Scan and accept the second invitation -
Connection exists is shownandrelationship-reusedmessage is printed in script output.
-
QR:
const testCase = { relationship: 'qr', connection: 'outOfBand', } -
Deeplink:
const testCase = { relationship: 'smsOutOfBand', connection: 'outOfBand', }
-