Testing Observability Amy Phillips Testing Observability | Amy - - PowerPoint PPT Presentation

testing observability
SMART_READER_LITE
LIVE PREVIEW

Testing Observability Amy Phillips Testing Observability | Amy - - PowerPoint PPT Presentation

Testing Observability Amy Phillips Testing Observability | Amy Phillips | @amyjph Amy Phillips Engineering Manager at Moo Previously manager and tester at Songkick, The Guardian, and Yahoo! Can be found @amyjph Testing


slide-1
SLIDE 1

Testing Observability

Amy Phillips

slide-2
SLIDE 2

Amy Phillips

  • Engineering Manager at Moo
  • Previously manager and tester at Songkick, The Guardian,

and Yahoo!

  • Can be found @amyjph

Testing Observability | Amy Phillips | @amyjph

slide-3
SLIDE 3

The early days

Testing Observability | Amy Phillips | @amyjph

slide-4
SLIDE 4

Black box testing

Test case Expected result Test result User saves a value of 4. Retrieve value. System returns a value of 4 Pass

4 4

Testing Observability | Amy Phillips | @amyjph

slide-5
SLIDE 5

White box testing

if input == 4 return input else break

4 4 4 4

Testing Observability | Amy Phillips | @amyjph

Test case Expected result Test result User saves a value of 4. Retrieve value. System returns a value of 4 Pass

slide-6
SLIDE 6

Releases

Jan Feb Mar Apr May Jun Jul Aug Sep Oct Nov Dec Build new website

Coding Testing Bug fixing Retesting UAT Bug fixing Retesting

Go Live!

Testing Observability | Amy Phillips | @amyjph

slide-7
SLIDE 7

Introducing agile

Mon Tue Wed Thur Fri Mon Tue Wed Thur Fri Mon Feature 1

Coding Testing Bug fixing

Go Live! Feature 2

Coding Testing

Feature 3

Coding Testing Integration testing

Testing Observability | Amy Phillips | @amyjph

slide-8
SLIDE 8

Fluid testing

Acceptance testing Manual Automated Pairing Code reviews Error log reviews Ad Hoc tools

Testing Observability | Amy Phillips | @amyjph

slide-9
SLIDE 9

Continuous delivery

Testing Observability | Amy Phillips | @amyjph

slide-10
SLIDE 10

The monolith

Microservices and the impact on testing

Push code Release

Testing Observability | Amy Phillips | @amyjph

slide-11
SLIDE 11

The monolith

Microservices and the impact on testing

Testing Testing

Testing Observability | Amy Phillips | @amyjph

slide-12
SLIDE 12

Service

Microservices and the impact on testing

Release Push code Service Release Push code Service Release Push code

Testing Observability | Amy Phillips | @amyjph

slide-13
SLIDE 13

Service

Microservices and the impact on testing

Push code Service Release Push code Service Push code

Testing Observability | Amy Phillips | @amyjph

End to End Testing

slide-14
SLIDE 14

Service 1

Consumer driven contract testing

Release Push code Service 2 Release Push code Test broker e.g. PACT Test Test

Testing Observability | Amy Phillips | @amyjph

slide-15
SLIDE 15

Node A Master

Self healing systems

Service 1 Service 2 Node B Service 3

Testing Observability | Amy Phillips | @amyjph

slide-16
SLIDE 16

A quick look at testing

Testing Observability | Amy Phillips | @amyjph

slide-17
SLIDE 17

The two sides to testing

Testing Observability | Amy Phillips | @amyjph

Have we built the thing right? Have we broken anything else?

slide-18
SLIDE 18

Testing

An investigation conducted to gather information on the quality of the system or product.

Testing Observability | Amy Phillips | @amyjph

slide-19
SLIDE 19

Quality

A quality system meets the needs of the user.

Testing Observability | Amy Phillips | @amyjph

slide-20
SLIDE 20

Test pyramid

UI Integration Unit

Testing Observability | Amy Phillips | @amyjph

slide-21
SLIDE 21

Testing dials

Unit testing Integration testing Contract testing Manual testing

Testing Observability | Amy Phillips | @amyjph

slide-22
SLIDE 22

Testing that something works can be hard

Push code Test Release Two problems:

  • Process assumes a positive outcome = bug reports or rework
  • Forced failure states can be unrealistic = limited value

Testing Observability | Amy Phillips | @amyjph

slide-23
SLIDE 23

Observability instead of testing?

Testing Observability | Amy Phillips | @amyjph

slide-24
SLIDE 24

Retrospectively adding logging

Logging Service DB

Testing Observability | Amy Phillips | @amyjph

slide-25
SLIDE 25

How will we know when it isn’t working?

Testing Observability | Amy Phillips | @amyjph

slide-26
SLIDE 26

How would you test observability?

Monitoring Alerting Tracing Log aggregation

Testing Observability | Amy Phillips | @amyjph

slide-27
SLIDE 27

Chaos monkey

  • Weekly scheduled session
  • Two “monkeys”
  • One “victim”

Testing Observability | Amy Phillips | @amyjph

slide-28
SLIDE 28

Make it easy to observe failures

Break something

Testing Observability | Amy Phillips | @amyjph

Observability Fix it Improve

slide-29
SLIDE 29

Predictable chimp

  • Cheeky
  • Multi-talented
  • Engaging
  • Attention grabbing
  • Playful

http://interactivepuppy.com/spinmaster-zoomer

  • chimp-interactive-monkey-toy-review/

Testing Observability | Amy Phillips | @amyjph

slide-30
SLIDE 30

How to design test scenarios

Testing Observability | Amy Phillips | @amyjph

slide-31
SLIDE 31

Do you really need a tester?

Testing Observability | Amy Phillips | @amyjph

slide-32
SLIDE 32

Idea generation

Testing Observability | Amy Phillips | @amyjph

slide-33
SLIDE 33

Is it worth it?

Test value = risk vs. effort

Testing Observability | Amy Phillips | @amyjph

slide-34
SLIDE 34

Make it better

Break something

Testing Observability | Amy Phillips | @amyjph

Observability Fix it Improve

slide-35
SLIDE 35

In summary

  • Testing is changing as systems change
  • Observability may take the place of many testing tasks
  • But observability isn’t free
  • We should be asking “How will be know when it isn’t

working?”

Testing Observability | Amy Phillips | @amyjph

slide-36
SLIDE 36

Thanks

Amy Phillips @amyjph