create compelling tests

115
with a risk based approach @sammy_lee12 Create compelling tests

Upload: samantha-connelly

Post on 20-Feb-2017

33 views

Category:

Technology


0 download

TRANSCRIPT

Page 1: Create compelling tests

with a risk based approach@sammy_lee12

Create compelling tests

Page 2: Create compelling tests

You can ask questions

Example

Page 3: Create compelling tests

A bit about Tyro

Page 4: Create compelling tests
Page 5: Create compelling tests

Banking licence

Process $8 billion annually

$100 million in funding

Page 6: Create compelling tests

Banking licence

Process $8 billion annually

$100 million in funding

Page 7: Create compelling tests

Banking licence

Process $8 billion annually

$100 million in funding

Page 8: Create compelling tests

Microservices back end

Test Driven Development

Pair Programming

Page 9: Create compelling tests

Microservices back end

Test Driven Development

Pair Programming

Page 10: Create compelling tests

Microservices back end

Test Driven Development

Pair Programming

Page 11: Create compelling tests
Page 12: Create compelling tests

Let’s get into it

Page 13: Create compelling tests

Break app into flows

Page 14: Create compelling tests

1.Registration 2.Transfer Funds 3.View Transactions 4.Contact Us 5.Change Pin 6.Log In

Page 15: Create compelling tests

1.Registration 2.Transfer Funds 3.View Transactions 4.Contact Us 5.Change Pin 6.Log In

Page 16: Create compelling tests

1.Registration 2.Transfer Funds 3.View Transactions 4.Contact Us 5.Change Pin 6.Log In

Page 17: Create compelling tests

1.Registration 2.Transfer Funds 3.View Transactions 4.Contact Us 5.Change Pin 6.Log In

Page 18: Create compelling tests

1.Registration 2.Transfer Funds 3.View Transactions 4.Contact Us 5.Change Pin 6.Log In

Page 19: Create compelling tests

1.Registration 2.Transfer Funds 3.View Transactions 4.Contact Us 5.Change Pin 6.Log In

Page 20: Create compelling tests

Map flows onto a Risk Board

Page 21: Create compelling tests

Frequency of use

Page 22: Create compelling tests

Frequency of use

Page 23: Create compelling tests

Impact if broken

Frequency of use

Page 24: Create compelling tests

Impa

ct if

bro

ken

Frequency of use

Page 25: Create compelling tests

Impa

ct if

bro

ken

Frequency of use

Page 26: Create compelling tests

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

Page 27: Create compelling tests

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

Page 28: Create compelling tests

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

Page 29: Create compelling tests

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

Page 30: Create compelling tests

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

Page 31: Create compelling tests

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

Page 32: Create compelling tests

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

Page 33: Create compelling tests

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

Page 34: Create compelling tests

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

Page 35: Create compelling tests

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

Page 36: Create compelling tests

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

Page 37: Create compelling tests

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

Page 38: Create compelling tests

Here’s one I prepared earlier

Example

Page 39: Create compelling tests
Page 40: Create compelling tests

Break flows into tests

Page 41: Create compelling tests

5. Change Pin

Flow

Page 42: Create compelling tests

5. Change Pin

Registered Device and Logged in

SetupFlow

Page 43: Create compelling tests

5. Change Pin

Registered Device and Logged in

Click on Hamburger side menu

Setup Test steps and checksFlow

Page 44: Create compelling tests

5. Change Pin

Registered Device and Logged in

Click on Hamburger side menu

Setup Test steps and checksFlow

See MenuList

Page 45: Create compelling tests

5. Change Pin

Registered Device and Logged in

Click on Hamburger side menu

See MenuList

Setup Test steps and checksFlow

Click on Change

Passcode

Page 46: Create compelling tests

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

Page 47: Create compelling tests

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

Page 48: Create compelling tests

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

Page 49: Create compelling tests

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

Page 50: Create compelling tests

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

Page 51: Create compelling tests

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

Page 52: Create compelling tests

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

Page 53: Create compelling tests

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

Page 54: Create compelling tests

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

Page 55: Create compelling tests

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

Page 56: Create compelling tests

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

Page 57: Create compelling tests

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

Page 58: Create compelling tests

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

Page 59: Create compelling tests

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

Page 60: Create compelling 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

Key

Enter correct pin

Page 61: Create compelling 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

Maps to Risk board

Key

Enter correct pin

Page 62: Create compelling 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

Maps to Risk board

Data to set up before/

during test

Key

Enter correct pin

Page 63: Create compelling 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

Maps to Risk board

Data to set up before/

during test

User action

Key

Enter correct pin

Page 64: Create compelling 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

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

Page 65: Create compelling tests

Here’s one I prepared earlier

Example

Page 66: Create compelling tests
Page 67: Create compelling tests

Continue creating tests

Page 68: Create compelling 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

Page 69: Create compelling 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 pinTest 1

Page 70: Create compelling tests

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

Page 71: Create compelling 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

Test 3

3. View Transactions

Page 72: Create compelling tests

Here’s one I prepared earlier

Example

Page 73: Create compelling tests
Page 74: Create compelling tests

Combine similar tests

Page 75: Create compelling 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

Page 76: Create compelling 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

Same data

3. View Transactions

Page 77: Create compelling 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

Page 78: Create compelling tests

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

Page 79: Create compelling tests

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

Page 80: Create compelling tests

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

Page 81: Create compelling tests

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

Page 82: Create compelling tests

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

Page 83: Create compelling tests

Here’s our 35 flows covered by 5 UI tests

Example

Page 84: Create compelling tests
Page 85: Create compelling tests

Create UI tests

Page 86: Create compelling tests
Page 87: Create compelling 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())

Page 88: Create compelling tests

Accessibility inspector

Page 89: Create compelling tests

SummaryCompelling tests are risk based

Page 90: Create compelling tests

Break app into flows Map flows onto a risk board

Break flows into tests Create tests

Maintain tests

Page 91: Create compelling tests

Break app into flows Map flows onto a risk board

Break flows into tests Create tests

Maintain tests

Page 92: Create compelling tests

Break app into flows Map flows onto a risk board

Break flows into tests Create tests

Maintain tests

Page 93: Create compelling tests

Break app into flows Map flows onto a risk board

Break flows into tests Create tests

Maintain tests

Page 94: Create compelling tests

Break app into flows Map flows onto a risk board

Break flows into tests Create tests

Maintain tests

Page 95: Create compelling tests

Questions?@sammy_lee12

Page 96: Create compelling tests

Other types of testing

Page 97: Create compelling tests

Mindmaps

Page 98: Create compelling tests
Page 99: Create compelling tests
Page 100: Create compelling tests

Soap opera & persona testing

Page 101: Create compelling tests
Page 102: Create compelling tests
Page 103: Create compelling tests

Timeline tests

Page 104: Create compelling tests
Page 105: Create compelling tests

Nightmare headlines

Page 106: Create compelling tests
Page 107: Create compelling tests

State diagrams

Page 108: Create compelling tests
Page 109: Create compelling tests

Mindmaps Soap opera & persona testing Timeline tests Nightmare headlines State Diagrams

Other types of testing

Page 110: Create compelling tests

Mindmaps Soap opera & persona testing Timeline tests Nightmare headlines State Diagrams

Other types of testing

Page 111: Create compelling tests

Mindmaps Soap opera & persona testing Timeline tests Nightmare headlines State Diagrams

Other types of testing

Page 112: Create compelling tests

Mindmaps Soap opera & persona testing Timeline tests Nightmare headlines State Diagrams

Other types of testing

Page 113: Create compelling tests

Mindmaps Soap opera & persona testing Timeline tests Nightmare headlines State Diagrams

Other types of testing

Page 115: Create compelling tests

Questions?@sammy_lee12