Create compelling tests
-
Upload
samantha-connelly -
Category
Technology
-
view
30 -
download
0
Transcript of Create compelling tests
with a risk based approach@sammy_lee12
Create compelling tests
You can ask questions
Example
A bit about Tyro
Banking licence
Process $8 billion annually
$100 million in funding
Banking licence
Process $8 billion annually
$100 million in funding
Banking licence
Process $8 billion annually
$100 million in funding
Microservices back end
Test Driven Development
Pair Programming
Microservices back end
Test Driven Development
Pair Programming
Microservices back end
Test Driven Development
Pair Programming
Let’s get into it
Break app into flows
1.Registration 2.Transfer Funds 3.View Transactions 4.Contact Us 5.Change Pin 6.Log In
1.Registration 2.Transfer Funds 3.View Transactions 4.Contact Us 5.Change Pin 6.Log In
1.Registration 2.Transfer Funds 3.View Transactions 4.Contact Us 5.Change Pin 6.Log In
1.Registration 2.Transfer Funds 3.View Transactions 4.Contact Us 5.Change Pin 6.Log In
1.Registration 2.Transfer Funds 3.View Transactions 4.Contact Us 5.Change Pin 6.Log In
1.Registration 2.Transfer Funds 3.View Transactions 4.Contact Us 5.Change Pin 6.Log In
Map flows onto a Risk Board
Frequency of use
Frequency of use
Impact if broken
Frequency of use
Impa
ct if
bro
ken
Frequency of use
Impa
ct if
bro
ken
Frequency of use
Impa
ct if
bro
ken
Frequency of use
1.Registration 2.Transfer Funds 3.View Transactions 4.Contact Us 5.Change Pin 6.Log In
1
Impa
ct if
bro
ken
Frequency of use
1.Registration 2.Transfer Funds 3.View Transactions 4.Contact Us 5.Change Pin 6.Log In
1
2
Impa
ct if
bro
ken
Frequency of use
1.Registration 2.Transfer Funds 3.View Transactions 4.Contact Us 5.Change Pin 6.Log In
1 2
3
Impa
ct if
bro
ken
Frequency of use
1.Registration 2.Transfer Funds 3.View Transactions 4.Contact Us 5.Change Pin 6.Log In
1 2
3 4
Impa
ct if
bro
ken
Frequency of use
1.Registration 2.Transfer Funds 3.View Transactions 4.Contact Us 5.Change Pin 6.Log In
1 2
3
4
5
Impa
ct if
bro
ken
Frequency of use
1.Registration 2.Transfer Funds 3.View Transactions 4.Contact Us 5.Change Pin 6.Log In
1 2
3
4
5
6
Impa
ct if
bro
ken
Frequency of use
1.Registration 2.Transfer Funds 3.View Transactions 4.Contact Us 5.Change Pin 6.Log In
1 2
3
4
5
6
Impa
ct if
bro
ken
Frequency of use
1.Registration 2.Transfer Funds 3.View Transactions 4.Contact Us 5.Change Pin 6.Log In
1 2
3
4
5
6
Impa
ct if
bro
ken
Frequency of use
1.Registration 2.Transfer Funds 3.View Transactions 4.Contact Us 5.Change Pin 6.Log In
1 2
3
4
5
6
Impa
ct if
bro
ken
Frequency of use
1.Registration 2.Transfer Funds 3.View Transactions 4.Contact Us 5.Change Pin 6.Log In
1 2
3
4
5
6
Impa
ct if
bro
ken
Frequency of use
1.Registration 2.Transfer Funds 3.View Transactions 4.Contact Us 5.Change Pin 6.Log In
1 2
3
4
5
6
Impa
ct if
bro
ken
Frequency of use
1.Registration 2.Transfer Funds 3.View Transactions 4.Contact Us 5.Change Pin 6.Log In
1 2
3
4
5
6
Security Impact
Here’s one I prepared earlier
Example
Break flows into tests
5. Change Pin
Flow
5. Change Pin
Registered Device and Logged in
SetupFlow
5. Change Pin
Registered Device and Logged in
Click on Hamburger side menu
Setup Test steps and checksFlow
5. Change Pin
Registered Device and Logged in
Click on Hamburger side menu
Setup Test steps and checksFlow
See MenuList
5. Change Pin
Registered Device and Logged in
Click on Hamburger side menu
See MenuList
Setup Test steps and checksFlow
Click on Change
Passcode
Click on Change
Passcode5. Change
PinRegistered Device and Logged in
Click on Hamburger side menu
See MenuList
Setup Test steps and checksFlow
See change
passcode screen
See change
passcode screen
Click on Change
Passcode5. Change
PinRegistered Device and Logged in
Click on Hamburger side menu
See MenuList
Setup Test steps and checksFlow
Enter correct pin
See change
passcode screen
Click on Change
Passcode5. Change
PinRegistered Device and Logged in
Click on Hamburger side menu
See MenuList
Enter correct pin
Setup Test steps and checksFlow
Enter incorrect
pin
See change
passcode screen
Click on Change
Passcode5. Change
PinRegistered Device and Logged in
Click on Hamburger side menu
See MenuList
Enter correct pin
Setup Test steps and checksFlow
Enter incorrect
pin
Enter pin after
session timeout
See change
passcode screen
Click on Change
Passcode5. Change
PinRegistered Device and Logged in
Click on Hamburger side menu
See MenuList
Enter correct pin
Setup Test steps and checksFlow
Enter pin after
session timeout
Enter incorrect
pin
Enter phone in
aeroplane mode
See change
passcode screen
Click on Change
Passcode5. Change
PinRegistered Device and Logged in
Click on Hamburger side menu
See MenuList
Enter correct pin
Setup Test steps and checksFlow
Enter pin after
session timeout
Enter phone in
aeroplane mode
Enter incorrect
pin
Press back button
See change
passcode screen
Click on Change
Passcode5. Change
PinRegistered Device and Logged in
Click on Hamburger side menu
See MenuList
Enter correct pin
Setup Test steps and checksFlow
Enter pin after
session timeout
Enter phone in
aeroplane mode
Press back button
Enter incorrect
pin
See change
passcode screen
Click on Change
Passcode5. Change
PinRegistered Device and Logged in
Click on Hamburger side menu
See MenuList
Enter correct pin
Setup Test steps and checksFlow
Enter pin after
session timeout
Enter phone in
aeroplane mode
Press back button
Enter incorrect
pin
See toast notification
See change
passcode screen
Click on Change
Passcode5. Change
PinRegistered Device and Logged in
Click on Hamburger side menu
See MenuList
Enter correct pin
Setup Test steps and checksFlow
Enter pin after
session timeout
Enter phone in
aeroplane mode
Press back button
Enter incorrect
pinSee toast
notification
Enter incorrect
pin 2 more times
See change
passcode screen
Click on Change
Passcode5. Change
PinRegistered Device and Logged in
Click on Hamburger side menu
See MenuList
Enter correct pin
Setup Test steps and checksFlow
Enter pin after
session timeout
Enter phone in
aeroplane mode
Press back button
Enter incorrect
pinSee toast
notification
Enter incorrect
pin 2 more times
7. Lock pin
Enter correct pin
See change
passcode screen
Click on Change
Passcode5. Change
PinRegistered Device and Logged in
Click on Hamburger side menu
See MenuList
Setup Test steps and checksFlow
Enter incorrect
pinSee toast
notification
Enter correct pin
See change
passcode screen
Click on Change
PasscodeSee toast
notification5. Change
PinRegistered Device and Logged in
Click on Hamburger side menu
See MenuList
Enter incorrect
pin
Setup Test steps and checksFlow
See change
passcode screen
Click on Change
PasscodeSee toast
notification5. Change
PinRegistered Device and Logged in
Click on Hamburger side menu
See MenuList
Enter correct pin
See create pin screen
Enter incorrect
pin
Setup Test steps and checksFlow
See change
passcode screen
Click on Change
PasscodeSee toast
notification5. Change
PinRegistered Device and Logged in
Click on Hamburger side menu
See MenuList
Enter correct pin
See create pin screen
Enter incorrect
pin
Setup Test steps and checksFlow
See change
passcode screen
Click on Change
PasscodeSee toast
notification5. Change
PinRegistered Device and Logged in
Click on Hamburger side menu
See MenuList
See create pin screen
Enter incorrect
pin
Setup Test steps and checksFlow
Key
Enter correct pin
See change
passcode screen
Click on Change
PasscodeSee toast
notification5. Change
PinRegistered Device and Logged in
Click on Hamburger side menu
See MenuList
See create pin screen
Enter incorrect
pin
Setup Test steps and checksFlow
Maps to Risk board
Key
Enter correct pin
See change
passcode screen
Click on Change
PasscodeSee toast
notification5. Change
PinRegistered Device and Logged in
Click on Hamburger side menu
See MenuList
See create pin screen
Enter incorrect
pin
Setup Test steps and checksFlow
Maps to Risk board
Data to set up before/
during test
Key
Enter correct pin
See change
passcode screen
Click on Change
PasscodeSee toast
notification5. Change
PinRegistered Device and Logged in
Click on Hamburger side menu
See MenuList
See create pin screen
Enter incorrect
pin
Setup Test steps and checksFlow
Maps to Risk board
Data to set up before/
during test
User action
Key
Enter correct pin
See change
passcode screen
Click on Change
PasscodeSee toast
notification5. Change
PinRegistered Device and Logged in
Click on Hamburger side menu
See MenuList
See create pin screen
Enter incorrect
pin
Key
Setup Test steps and checksFlow
Maps to Risk board
Data to set up before/
during test
User action
Check/ Success
indicator
Enter correct pin
Here’s one I prepared earlier
Example
Continue creating tests
See change
passcode screen
Click on Change
PasscodeSee toast
notification5. Change
PinRegistered Device and Logged in
Click on Hamburger side menu
See MenuList
See create pin screen
Enter incorrect
pin
Setup Test steps and checksFlow
Enter correct pin
See change
passcode screen
Click on Change
PasscodeSee toast
notification5. Change
PinRegistered Device and Logged in
Click on Hamburger side menu
See MenuList
See create pin screen
Enter incorrect
pin
Setup Test steps and checksFlow
Enter correct pinTest 1
Smooth scrolling is observed
User scrolls down
3. View Transactions
Registered Device and Logged in
Click on balance See list
See change
passcode screen
Click on Change
PasscodeSee toast
notification5. Change
PinRegistered Device and Logged in
Click on Hamburger side menu
See MenuList
See create pin screen
Enter incorrect
pin
Setup Test steps and checksFlow
Enter correct pin
Test 2
Smooth scrolling is observed
User scrolls down
Registered Device and Logged in
Click on balance See list
10. LogoutRegistered Device and Logged in
Click on Hamburger side menu
See MenuList
Click on Logout
See log in screen
See change
passcode screen
Click on Change
PasscodeSee toast
notification5. Change
PinRegistered Device and Logged in
Click on Hamburger side menu
See MenuList
See create pin screen
Enter incorrect
pin
Setup Test steps and checksFlow
Enter correct pin
Test 3
3. View Transactions
Here’s one I prepared earlier
Example
Combine similar tests
Smooth scrolling is observed
User scrolls down
Registered Device and Logged in
Click on balance See list
10. LogoutRegistered Device and Logged in
Click on Hamburger side menu
See MenuList
Click on Logout
See log in screen
See change
passcode screen
Click on Change
PasscodeSee toast
notification5. Change
PinRegistered Device and Logged in
Click on Hamburger side menu
See MenuList
See create pin screen
Enter incorrect
pin
Setup Test steps and checksFlow
Enter correct pin
3. View Transactions
Smooth scrolling is observed
User scrolls down
Registered Device and Logged in
Click on balance See list
10. LogoutRegistered Device and Logged in
Click on Hamburger side menu
See MenuList
Click on Logout
See log in screen
See change
passcode screen
Click on Change
PasscodeSee toast
notification5. Change
PinRegistered Device and Logged in
Click on Hamburger side menu
See MenuList
See create pin screen
Enter incorrect
pin
Setup Test steps and checksFlow
Enter correct pin
Same data
3. View Transactions
Smooth scrolling is observed
User scrolls down
Registered Device and Logged in
Click on balance See list
10. LogoutRegistered Device and Logged in
Click on Hamburger side menu
See MenuList
Click on Logout
See log in screen
See change
passcode screen
Click on Change
PasscodeSee toast
notification5. Change
PinRegistered Device and Logged in
Click on Hamburger side menu
See MenuList
See create pin screen
Enter incorrect
pin
Setup Test steps and checksFlow
Enter correct pin
3. View Transactions
Smooth scrolling is observed
User scrolls down
Click on balance See list 10. Logout
Click on Hamburger side menu
See MenuList
Click on Logout
See log in screen
See change
passcode screen
Click on Change
PasscodeSee toast
notification5. Change
PinRegistered Device and Logged in
Click on Hamburger side menu
See MenuList
See create pin screen
Enter incorrect
pin
Setup Test steps and checksFlow
Enter correct pin
3. View Transactions
Smooth scrolling is observed
User scrolls down
Click on balance See list 10. Logout
Click on Hamburger side menu
See MenuList
Click on Logout
See log in screen
See change
passcode screen
Click on Change
PasscodeSee toast
notification5. Change
PinRegistered Device and Logged in
Click on Hamburger side menu
See MenuList
See create pin screen
Enter incorrect
pin
Flow
Enter correct pin
3. View TransactionsTest 1
Setup Test steps and checks
Smooth scrolling is observed
User scrolls down
Click on balance See list 10. Logout
Click on Hamburger side menu
See MenuList
Click on Logout
See log in screen
See change
passcode screen
Click on Change
PasscodeSee toast
notification5. Change
PinRegistered Device and Logged in
Click on Hamburger side menu
See MenuList
See create pin screen
Enter incorrect
pin
Setup Test steps and checksFlow
Enter correct pin
3. View Transactions
Test 2
Smooth scrolling is observed
User scrolls down
Click on balance See list 10. Logout
Click on Hamburger side menu
See MenuList
Click on Logout
See log in screen
See change
passcode screen
Click on Change
PasscodeSee toast
notification5. Change
PinRegistered Device and Logged in
Click on Hamburger side menu
See MenuList
See create pin screen
Enter incorrect
pin
Setup Test steps and checksFlow
Enter correct pin
3. View Transactions
Test 3
Smooth scrolling is observed
User scrolls down
Click on balance See list 10. Logout
Click on Hamburger side menu
See MenuList
Click on Logout
See log in screen
See change
passcode screen
Click on Change
PasscodeSee toast
notification5. Change
PinRegistered Device and Logged in
Click on Hamburger side menu
See MenuList
See create pin screen
Enter incorrect
pin
Setup Test steps and checksFlow
Enter correct pin
3. View Transactions
Onboarding
Here’s our 35 flows covered by 5 UI tests
Example
Create UI tests
Create UI tests - refactor
let app = XCUIApplication()
clickOnHamburglarMenu()
clickChangePasscode()
enterPin(1234)
expect(incorrectPinToast.isDisplayed()).to(beTrue())
enterPin(4321)
enterPin(4321)
expect(changePinToast.isDisplayed()).to(beTrue())
Accessibility inspector
SummaryCompelling tests are risk based
Break app into flows Map flows onto a risk board
Break flows into tests Create tests
Maintain tests
Break app into flows Map flows onto a risk board
Break flows into tests Create tests
Maintain tests
Break app into flows Map flows onto a risk board
Break flows into tests Create tests
Maintain tests
Break app into flows Map flows onto a risk board
Break flows into tests Create tests
Maintain tests
Break app into flows Map flows onto a risk board
Break flows into tests Create tests
Maintain tests
Questions?@sammy_lee12
Other types of testing
Mindmaps
Soap opera & persona testing
Timeline tests
Nightmare headlines
State diagrams
Mindmaps Soap opera & persona testing Timeline tests Nightmare headlines State Diagrams
Other types of testing
Mindmaps Soap opera & persona testing Timeline tests Nightmare headlines State Diagrams
Other types of testing
Mindmaps Soap opera & persona testing Timeline tests Nightmare headlines State Diagrams
Other types of testing
Mindmaps Soap opera & persona testing Timeline tests Nightmare headlines State Diagrams
Other types of testing
Mindmaps Soap opera & persona testing Timeline tests Nightmare headlines State Diagrams
Other types of testing
• Soap Opera testing
• Blogs
• Book: Explore It!
• Mindmaps: Test Insane
Resources
Questions?@sammy_lee12