Some testcases are only relevant on browsers that support getUserMedia. To check if a device&browser supports getUserMedia you can check this link - canIUse getUserMedia
(on private mode of: Google Chrome, Firefox, Safari and Microsoft Edge browsers)
- Given webcam is connected to the computer
- Go through the flow to face capture
- browser should ask to enable the webcam
- Accept the webcam to be used on browser
- photo capture frame should display preview from webcam
- Take photo with a webcam
- confirmation screen should show up containing photo that was taken
- user should be able to retake or continue with taken photo
(on private mode of: Google Chrome, Firefox, Safari and Microsoft Edge browsers)
- Given webcam is connected to the computer
- Open link with additional GET parameter
?useWebcam=true
- Go through the flow to document capture
- browser should ask to enable the webcam
- Accept the webcam to be used on browser
- photo capture frame should display preview from webcam
- Place document in front of camera so that it aligns the edges of document capture frame
- document should be auto-captured
- confirmation screen should show up containing a photo that was taken
- user should be able to retake or continue with taken photo
(on private mode of: Firefox, Safari, IE11 and Microsoft Edge browsers)
- Given user is on Passport page
- Click on link to start cross-device flow
- user should see
Continue your verification on mobile
screen - user should see option to copy link
- user should see
- Open new tab and paste the link
- user should see
Passport photo page
title of the screen - user should be able to upload a document from a mobile device
- user should see
- Switch to the first tab
- user should see
Connected to your mobile
screen - user should see an option to cancel
- user should see
- Switch to the second tab and complete uploading the document and photo
- Switch to the first tab again
- user should see
Great, that’s everything we need
screen - user should see the
Submit Verification
button
- user should see
- Submit verification
- user should see
Verification complete
screen
- user should see
(on one of the desktop browsers and both Android Chrome and iOS Safari mobile browsers)
- Given user is on upload document page on desktop browser
- Click on link to start cross-device flow
- user should see
Continue your verification on mobile
screen - user should be able to provide mobile number from any country
- user should see the option to send SMS
- user should see option to copy link
- user should see
- Type valid mobile number connected to mobile test device and send
- user should see
Check your mobile
screen - user should see option to resend link
- user should receive SMS on a mobile device
- Additional test: Double click on "Send link" button
- subsequent steps should be same as above and not skip straight to
Complete
screen
- subsequent steps should be same as above and not skip straight to
- user should see
- Open link on mobile device (for each mobile browser)
- user should see
Upload front of document
screen - user should be able to upload a document from a mobile device
- user should see
(on one of the desktop browsers and both Android Chrome and iOS Safari mobile browsers)
- Given user is using the Spanish SDK by opening the link with additional GET parameter
?language=es
- Given user is on upload document page on desktop browser
- Click on link to start cross-device flow
- user should see
Continúe la verificación en su dispositivo móvil
screen - user should be able to provide mobile number from any country
- user should see the option to send SMS
- user should see option to copy link
- user should see
- Type valid mobile number connected to mobile test device and send
- user should see
Controle su dispositivo móvil
screen - user should see option to resend link
- user should receive SMS on a mobile device
- the body of the SMS should be in Spanish
- user should see
- Open link on mobile device (for each mobile browser)
- user should see that the SDK is in Spanish
(on private mode of another browser)
- Given user is on first page of cross-device flow
- Type valid mobile number connected to mobile test device and send
- user should see
Check your mobile
screen - user should see option to resend link
- user should see
- Click
Resend link
- user should see
Continue your verification on mobile
screen again - user should be able to provide mobile number again
- user should see the option to send SMS
- user should see
(on private mode of yet another browser)
- Given user is on first page of cross-device flow
- Type invalid mobile number and click send
- user should see an validation error
- user should persist on the same screen
- STAGING ONLY: Type invalid US number (+1 234 567 8912) and click send
- user should see
Something's gone wrong
error - user should persist on the same screen
- user should see
(on private mode of: Google Chrome, Firefox, Safari and Microsoft Edge browsers)
- Given user is on first page of cross-device flow
- Click on the
Copy
button - Open a new tab of the browser
- Paste the link
- user should see
Something's gone wrong
message - user should see
You must open this link on a mobile device
message - user should see the icon with the phone, screen and the red cross
- user should see
(on private mode of: Google Chrome, Firefox)
-
Given webcam is connected to the computer
-
Open link with additional GET parameter
?liveness=true
-
Upload the ID documents in the browser
-
On the liveness recording screen, wait for the
Use your mobile to continue face verification
message and select it -
Open the cross device link on a mobile device that doesn't have media recorder api support (Chrome on iOS)
- user should be taken to the selfie intro screen
-
Open the cross device link on a mobile device that has media recorder api support (Chrome on Android)
- user should be taken to the liveness intro screen
-
Given webcam is not connected to the computer
-
Open link with additional GET parameter
?liveness=true
-
Upload the ID documents in the browser
-
Open the cross device link on a mobile device that doesn't have media recorder api support (Chrome on iOS)
- user should be taken to the selfie intro screen
-
Open the cross device link on a mobile device that has media recorder api support (Chrome on Android)
- user should be taken to the liveness intro screen
(on private mode of: Safari, Firefox, IE11 and Microsoft Edge browsers)
Go through the flow looking for layout/usability inconsistencies between browsers:
- Select one of the documents
- everything should be displayed properly and layout should not be broken
- Upload document
- everything should be displayed properly and layout should not be broken
- Upload face photo
- everything should be displayed properly and layout should not be broken
(on private mode of: Android Google Chrome and iOS Safari browsers)
Go through the flow looking for layout/usability inconsistencies between browsers:
- Select one of the documents
- everything should be displayed properly and layout should not be broken
- Upload document
- everything should be displayed properly and layout should not be broken
- Upload face photo
- everything should be displayed properly and layout should not be broken
(ONLY ON browsers with getUserMedia support: on an iOS and Android device; a laptop with camera; desktop or laptop with a third-party USB camera)
- Go to the face step
- Move your face to the left
- Make sure your face also moves to the left on camera feed (like looking at a mirror)
(ONLY ON browsers with getUserMedia support: on an iOS and Android device; a laptop with camera; desktop or laptop with a third-party USB camera)
- Go to the face step. If on desktop resize the window to less than 480px width wise (if the browser let's you reduce that far)
- The capture component should be fullscreen
(on any browser) 0. Go to latest JsFiddle
- Add the following options to the
Onfido.init
initialisation params:
language: {
locale: 'fr',
phrases: {'welcome.title': 'Ouvrez votre nouveau compte bancaire'}
}
- Then the title on the welcome screen should be 'Ouvrez votre nouveau compte bancaire'
(on any browser) 0. Go to latest JsFiddle
- Add the following options to the
Onfido.init
initialisation params:
language: {
locale: 'es',
phrases: {'welcome.title': 'A custom string'}
}
- Then the title on the welcome screen should be 'A custom string'
- All the other strings should be in Spanish
(on any browser) 0. Go to latest JsFiddle
- Add the following options to the
Onfido.init
initialisation params:
language: {
locale: 'es',
mobilePhrases: {'capture.passport.front.title': 'A custom string'}
}
- Select passport on the document selector screen
- Choose the cross device flow and send an SMS to your mobile
- The SMS should be in Spanish
- When you open the link on your mobile device, the title on the cross device client should be
A custom string
- All the other strings should be in Spanish
Feature is available on desktop browsers only. (on Firefox, Safari, IE11 and Microsoft Edge browsers)
- Go through the flow to document capture
- Upload a document in PDF format
- You should see a confirm screen with the following outcomes Outcome:
- on Safari (and Chrome - this is automated) you should see a preview of the PDF
- on Firefox, IE11, Microsoft Edge and mobile browsers you should see an icon of a PDF
- Go to latest JsFiddle
- Add the following options to the initialisation params:
{
steps: [
'welcome',
{
type:'document',
options: {
documentTypes: {
passport: true,
driving_licence: true
}
}
},
'face',
'complete'
]
}
Outcome:
- On the document selection screen only "Passport" and "Driver's License" options should be visible.
19. Check permission priming screen displays when webcam is available and permission was not yet granted
(on Firefox, Safari and Microsoft Edge browsers)
- Go through the flow to document capture
- Upload a valid document
- Click
Confirm
- You should see a permission priming screen
- Click
Enable webcam
- You should see the capture screen and camera permissions prompt
20. Check permission priming screen does not display when webcam is available and permission was already granted
(on Chrome)
- Go through the flow to document capture
- Upload a valid document
- Click
Confirm
- You should see the capture screen
21. Check permission denied / recovery screen displays when webcam is available and permission wasn't previously denied and is denied after prompt
(on Chrome)
- Go through the flow to document capture
- Upload a valid document
- Click
Confirm
- You should see a permission priming screen
- Click
Enable webcam
- You should see the capture screen and camera permissions prompt
- Click
Block
- You should see the permission denied / recovery screen
22. Check permission denied / recovery screen displays when webcam is available and permission was previously denied
(on Firefox, Safari and Microsoft Edge browsers)
- Go through the flow to document capture
- Upload a valid document
- Click
Confirm
- You should see a permission priming screen
- Click
Enable webcam
- You should see the permission denied / recovery screen if the browser does not remember previous decision
(on Firefox, Safari, IE11 and Microsoft Edge browsers)
- Go through the flow to document capture
- Click
Need to use your mobile to take photos?
- You should see the cross-device intro screen
(no webcam / webcam disabled)
- Go through the flow to document capture
- Upload a valid document
- Click
Confirm
- You should see the cross-device intro screen
(on private mode of: Google Chrome, Firefox, Safari and Microsoft Edge browsers)
- Given webcam is connected to the computer
- Go through the flow to face capture
- browser should ask to enable the webcam
- Accept the webcam to be used on browser
- photo capture frame should display preview from webcam
- Wait for 10 seconds
- A warning should pop up with "Use your mobile" link
- Click on "Use your mobile"
- You should be able to continue on mobile
(Google Chrome on Android, getUsermedia supported browser, and Safari on iOS11+)
- Go through the flow to face capture
- browser should ask to enable the webcam
- Accept the webcam to be used on browser
- photo capture frame should display preview from webcam
- Wait for 8 seconds
- A warning should pop up asking if you are having problems with the webcam
- Click on "Try the basic camera mode instead"
- You should be able to take a picture with your native camera
(on private mode of: Google Chrome and Firefox browsers)
- Given webcam is connected to the computer
- Open link with additional GET parameter
?liveness=true
- Go through the flow to face capture
- You should see an intro screen with header "Let’s make sure nobody’s impersonating you"
- Click "Continue"
- browser should ask to enable the webcam
- Accept the webcam to be used on browser
- video capture frame should display preview from webcam
- Take a video with a webcam
- click on the camera button
- follow the instructions on the screen
- you should see 2 challenges
- once completed, you should be able to see the video and to click on "Confirm"
- you should see the complete screen
(on private mode of: Safari and Edge browsers - these browsers do not support video recording)
- Given webcam is connected to the computer
- Open link with additional GET parameter
?liveness=true
- Go through the flow to face capture
- You should see a screen that guides you to use your mobile
- Copy the link
- Open the link in a new tab
- You should see a file uploader to upload a selfie
- Upload selfie
- Confirm
(on private mode of: any browser with no webcam OR Safari and Edge browsers)
- Given there is no webcam connected to the computer
- Open link with additional GET parameter
?liveness=true
- Go through the flow to face capture
- You should see a screen that guides you to use your mobile
- Input mobile number
- Send SMS
- Click on link on your mobile
- Accept camera permissions On Android: 4a. You should see a camera screen
- You should be able to submit a video On iOS: 4b. You should see a file uploader to upload a selfie
- Upload selfie
- Confirm
(on one of the desktop browsers)
- Given there is no webcam connected to the computer
- Open link with additional GET parameter
?countryCode=US
- Click on link to start cross-device flow
- user should see
Continue your verification on mobile
screen - user should be able to provide mobile number from any country
- user should see the option to send SMS
- the SMS input flag should be the US flag
- user should see
(on one of the desktop browsers)
- Given there is no webcam connected to the computer
- Open link with additional GET parameter
?countryCode=ABCD
- Click on link to start cross-device flow
- user should see
Continue your verification on mobile
screen - user should be able to provide mobile number from any country
- user should see the option to send SMS
- the SMS input flag should be the UK one
- user should see
(on private mode of: Google Chrome, Firefox, Safari and Microsoft Edge browsers)
- Open link with additional GET parameter
?poa=true
- On the welcome screen click on Verify Identity
- You should see the PoA intro screen with title "Let’s verify your UK address"
- Click "Start Verification"
- Select a document type
- You should see a guidance screen and the title should be the name of the document type you chose
- Click on the "Upload file" button
- Confirmation screen should show up containing a photo that was taken
- You should be able to retake or continue with taken photo
0. Given user opened the link with `?uploadFallback=false` flag
1. And user is on first page of cross-device flow
2. Open the cross device link on mobile browsers with a working webcam.
- user should be able to complete the cross-device flow successfully.
0. Given user opened the link with `?uploadFallback=false` flag
1. And user is on first page of cross-device flow
2. Open the cross device link on mobile browsers with a malfunctioning webcam or on mobile browsers that do not support getUserMedia (ie Safari on iOS10.3 or earlier).
- user won't see the "use the native camera mode instead" link
- user should NOT be able to complete the cross-device flow successfully.
0. Given user opened the link with `?uploadFallback=false` flag
1. And user is on first page of cross-device flow
2. Open the cross device link on mobile browser without the camera.
- user should be able to upload the documents from the device storage
- user should not be able to record the liveness video
- user should see `No camera detected` message
- user should see `Restart the process with a different device` message
- user should see the icon with the phone, screen and the red cross
(on one of the desktop browsers)
- Open link with additional GET parameter
?smsNumber=+447955555555
- Go to the document capture step
- Click on link to start cross-device flow
- user should see
Continue your verification on mobile
screen - user should see that the SMS input has been pre-filled with the number provided at the beginning
- if the number is correct the user should be able to successfully send an SMS
- if the number is invalid the user will see an error when clicking "Send link"
- user should see
(on one of the desktop browsers)
- Open link with additional GET parameter
?oneDoc=true
- Go to the document capture step
- user should not see the document select screen
- user should see
Passport photo page
title of the screen
(on one of the desktop browsers)
- Open link with additional GET parameter
?forceCrossDevice=true
- Click on "Verify Identity"
- user should be forced to use x-device to submit document capture
- Click on link to start cross-device flow
- user should see
Continue your verification on mobile
screen - user should be able to successfully submit a document capture on their mobile phone
- user should see
(desktop and mobile browsers)
- Upload a document
- Click "Enlarge image"
- Click browser's back button while document is zoomed in
- "Check readability" text and back arrow retain the colour
- Back navigation in the browser doesn't cause any other UI changes in the SDK
(on private mode of: Google Chrome, Firefox, Safari and Microsoft Edge browsers)
- Given user opened the link with
?useMultipleSelfieCapture=true
flag - Given user opens the Network tab of the dev tool inspector
- Go through the flow to face capture
- browser should ask to enable the webcam
- Accept the webcam to be used on browser
- photo capture frame should display preview from webcam
- Take photo with a webcam
- confirmation screen should show up containing photo that was taken
- User submits the photo and successfully completes the flow
- Complete screen should be displayed
- the Network tab of the dev tool inspector should include multiple requests to
live_photos
endpoint
(on one browser)
- Having JS SDK project open in Woopra
- Go through the normal flow for any document
- all events should be tracked
- no events should be duplicated
- Now repeat the same for cross-device; go through the flow for any document
- all events should be tracked
- no events should be duplicated
- Given local
.node_modules
folder is removed (not existing) - Run
npm install
- dependencies should be installed successfully