SlideShare une entreprise Scribd logo
1  sur  66
S M O K E T E S T S & M I R R O R S
Benjamin Bischoff
softwaretester.blog
T H I N G S T O TA L K
A B O U T
• Introduction
• A short glimpse into magic
• Nine magic principles in software
• Final thoughts
softwaretester.blog
O B L I G AT O RY
„ A B O U T M E “ S L I D E
• Benjamin Bischoff
• Test automation engineer @ trivago
• 22 years in tech
• 7 years of SDET experience
softwaretester.blog
S H A M E L E S S P L U G
• „Writing API Tests with Karate“
• Packt Publishing
softwaretester.blog
Y E T A N O T H E R
„ A B O U T M E “ S L I D E
• Started magic at the age of eight
• Favourite genre: close-up card magic
softwaretester.blog
M A K I N G C O N N E C T I O N S
S P O I L E R A L E R T
softwaretester.blog
A S H O R T G L I M P S E I N T O M A G I C
softwaretester.blog
– L A W R E N C E H A S S , P H I L O S O P H E R A N D M A G I C I A N
„The artful performance of impossible things that generates energy,
delight, and wonder.“
softwaretester.blog
TA X O N O M Y
• Stage illusions
• Parlor
• Close-up
• Escapology
• Pickpocket
• Mentalism
• Séances
• Children’s magic
• Classical
• Mechanical
• Online magic
• Mathemagic
• Corporate
• Bizarre
• Street
• Comedy
• Quick change
• Camera
softwaretester.blog
I L L U S I O N T Y P E S
• Production
• Vanish
• Transformation
• Restauration
• Transposition
• Teleportation
• Escape
• Levitation
• Penetration
• Prediction
softwaretester.blog
I M P O R TA N T D O C U M E N T S
1700 - 2000 B.C. 1584 1674
softwaretester.blog
I M P O R TA N T I N F L U E N C E R S
Dai Vernon
1894 – 1992
Tony Slydini
1901 – 1991
Juan Tamariz
* 1942
softwaretester.blog
– A R T H U R C . C L A R K E , W R I T E R
„Any sufficiently advanced technology is indistinguishable from
magic.“
softwaretester.blog
M A G I C P R I N C I P L E S I N S O F T WA R E
softwaretester.blog
I . ( M I S ) D I R E C T I O N
softwaretester.blog
( M I S ) D I R E C T I O N
I N M A G I C
• Mislead but not confuse spectators
• The large action covers the small
• The small action covers the large
softwaretester.blog
( M I S ) D I R E C T I O N
I N S O F T WA R E
• Misdirection in bug analysis: not
seeing the wood for the trees
• Unintentional misdirection through
bad software design decisions
softwaretester.blog
( M I S ) D I R E C T I O N
I N B U G T R A C K I N G
• Exposing too much information
• Staying in the perimeter of the error
instead of stepping out
• Not giving enough information
(e.g. swallowing exceptions)
softwaretester.blog
– H A R RY H O U D I N I , M A G I C I A N
„ What the eyes see and the ears hear, the mind believes.“
softwaretester.blog
I I . F O R C E
softwaretester.blog
F O R C E
I N M A G I C
• Giving the illusion of free choice
• Forcing a thought, thing or action
• Forcing yourself 🫤
softwaretester.blog
F O R C E
I N S O F T WA R E
• Forcing yourself or your solutions
and tools onto others
• Looking down from your
ivory tower 🫤
softwaretester.blog
– D A I V E R N O N , M A G I C I A N
„In magic, today as always, the effect is what counts. The method or
methods used are always purely secondary.“
softwaretester.blog
I I I . R E P E T I T I O N
softwaretester.blog
R E P E T I T I O N
I N M A G I C
• Repetition as a means of perfection
• Never repeat a trick rule
• Easy to figure out?
• Same effect, different methods?
• Is it worth repeating?
softwaretester.blog
R E P E T I T I O N
I N S O F T WA R E
• Repetition is the key to regression
testing
• Spot behaviour changes easily
• Ensure a known state of the system
• Repetition as training (katas)
softwaretester.blog
R E P E T I T I O N
I N M O N I T O R I N G
• Repeating user scenarios as
synthetic monitoring
• Otherwise, it is only a
one-time snapshot
softwaretester.blog
– B R U C E L E E , M A R T I A L A R T I S T
„I fear not the man who has practiced 10,000 kicks once, but I fear
the man who has practiced one kick 10,000 times.“
softwaretester.blog
I V. C L A R I T Y
softwaretester.blog
C L A R I T Y
I N M A G I C
• Keep your effect clear
• Easy to follow and understand
• Establish the initial state so that the
changed state can be recognised
softwaretester.blog
C L A R I T Y
I N S O F T WA R E
• Keeping test scenarios compact
• Linking cause and effect
• Avoiding boredom
• Keeping focus
softwaretester.blog
C L A R I T Y
I N R E P O R T I N G
• Directly see test results
• Relevant information without clutter
• Same structure across all projects
softwaretester.blog
– D A I V E R N O N , M A G I C I A N
„Confusion is not magic.“
softwaretester.blog
V. F R A M I N G
softwaretester.blog
F R A M I N G
I N M A G I C
• Finding the context for an effect
• Contented context elevates magic
beyond puzzles and makes it
meaningful
• Situational context must fit setting,
occasion and location
softwaretester.blog
F R A M I N G
I N S O F T WA R E
• Having the best idea and intention is
not enough
• If you phrase it poorly, it can fail
miserably
softwaretester.blog
F R A M I N G
I N T E A M I N T E N T
• Too focussed on providing solutions
• Detached from people and needs
• Forgetting the why
softwaretester.blog
– E U G E N E B U R G E R , M A G I C I A N
„The house of magic has many rooms.“
softwaretester.blog
V I . T I M E L A P S E
softwaretester.blog
T I M E L A P S E
I N M A G I C
• Time lapse is a form of misdirection
• The longer the time between two
events is, the less clear it is
softwaretester.blog
T I M E L A P S E
I N S O F T WA R E
• Reporting and monitoring has to be
on time
• Otherwise, it means nothing
• Timing is important
softwaretester.blog
T I M E L A P S E
I N T E S T F E E D B A C K
• Shifting left
• Fail fast / learn fast
• Fast communication channels
softwaretester.blog
– A L B E R T E I N S T E I N , T H E O R E T I C A L P H Y S I C I S T
„The only reason for time is so that everything doesn’t happen at
once.“
softwaretester.blog
V I I . C O N V I C T I O N
softwaretester.blog
C O N V I C T I O N
I N M A G I C
• Spectators have to be convinced of
an initial state to fully appreciate
changes
• It is better to convince implicitly
softwaretester.blog
C O N V I C T I O N
I N S O F T WA R E
• Conviction is stronger than
assumptions
• The intention of a system has to be
clear to detect deviation
• This is where BDD comes in
softwaretester.blog
C O N V I C T I O N I N
C O M M U N I C AT I O N
• Trust that all give their best and work
towards the same cause
• Get everyone on the same page
• Speak a ubiquitous language
softwaretester.blog
– T E L L E R , M A G I C I A N
„We estimate the intelligence of the audience as being greater than
ours.“
softwaretester.blog
V I I I . FA I L U R E
softwaretester.blog
FA I L U R E
I N M A G I C
• Stylistic device
• Improving magic by analysing failed
performances
softwaretester.blog
FA I L U R E
I N S O F T WA R E
• Don’t trust tests that never failed
before
• Failure is the essence of TDD
• If something fails, it should be
covered with a test
softwaretester.blog
P R E S E N T I N G
P R O C E S S FA I L U R E S
• SDLC Post-mortems
• Present failures and lessons
learned
• It is one of the best tools to
improve
softwaretester.blog
– T H O M A S A . E D I S O N , I N V E N T O R
„I have not failed. I've just found 10,000 ways that won't work.“
softwaretester.blog
I X . H I D D E N C O M P L E X I T Y
softwaretester.blog
H I D D E N C O M P L E X I T Y
I N M A G I C
• Magicians want to hide their skills
• Ideally, the magic should happen on
its own
softwaretester.blog
H I D D E N C O M P L E X I T Y
I N S O F T WA R E
• Only show choices when they are
needed
• Don’t propagate stack traces to the
front end
• Make error messages meaningful
and actionable
softwaretester.blog
S I M P L I F I C AT I O N
I N T H E U I / U X
• Limiting options for a better user
experience
• Disabling elements depending on
the context
• Straight forward happy path
softwaretester.blog
– G R A D Y B O O C H , S O F T WA R E E N G I N E E R
„The function of good software is to make the complex appear to be
simple.“
softwaretester.blog
H I D D E N C O M P L E X I T Y
I N T H E C L I
• Putting a simple proxy in front of a
complex system
softwaretester.blog
– S T U A R T C R O C K E R , Q A E N G I N E E R
„Quality is the absence of unnecessary friction.“
softwaretester.blog
F I N A L T H O U G H T S
W H E R E T O G O F R O M H E R E
softwaretester.blog
S PA R K I N G
C R E AT I V I T Y
• Transfer of learning is really satisfying
• Thought exercises to break out of
„programmer’s block“
• Try it with your own hobbies and
interests!
softwaretester.blog
K N O W L E D G E
E X C H A N G E
• Regular QA knowledge sharing
meetings at trivago
• Half of the topics are non-technical
• A quarter of the topics are
completely unrelated
softwaretester.blog
“ B E S T P R A C T I C E S ”
• There are no best practices for every
situation
• They can be adjusted…
• …or even turned upside down
softwaretester.blog
M A K I N G C O N N E C T I O N S
T H E P O I N T O F T H I S TA L K
softwaretester.blog
T H A N K Y O U !
Benjamin Bischoff
softwaretester.blog

Contenu connexe

Similaire à Smoke tests and mirrors

Switching horses midstream - From Waterfall to Agile
Switching horses midstream - From Waterfall to AgileSwitching horses midstream - From Waterfall to Agile
Switching horses midstream - From Waterfall to AgileDoc Norton
 
ACM Winter 2016 General Meeting
ACM Winter 2016 General Meeting ACM Winter 2016 General Meeting
ACM Winter 2016 General Meeting M. Fay Wu
 
Four Architectural Patterns
Four Architectural Patterns Four Architectural Patterns
Four Architectural Patterns David Simons
 
100% Visibility - Jason Yee - Codemotion Amsterdam 2018
100% Visibility - Jason Yee - Codemotion Amsterdam 2018100% Visibility - Jason Yee - Codemotion Amsterdam 2018
100% Visibility - Jason Yee - Codemotion Amsterdam 2018Codemotion
 
SharePoint Saturday Redmond - Building solutions with the future in mind
SharePoint Saturday Redmond - Building solutions with the future in mindSharePoint Saturday Redmond - Building solutions with the future in mind
SharePoint Saturday Redmond - Building solutions with the future in mindChris Johnson
 
Choosing the right database
Choosing the right databaseChoosing the right database
Choosing the right databaseDavid Simons
 
Canary Deployments on Amazon EKS with Istio - SRV305 - Chicago AWS Summit
Canary Deployments on Amazon EKS with Istio - SRV305 - Chicago AWS SummitCanary Deployments on Amazon EKS with Istio - SRV305 - Chicago AWS Summit
Canary Deployments on Amazon EKS with Istio - SRV305 - Chicago AWS SummitAmazon Web Services
 
Gain Maximum Visibility into Your Applications
Gain Maximum Visibility into Your Applications Gain Maximum Visibility into Your Applications
Gain Maximum Visibility into Your Applications Amazon Web Services
 
report [Repaired].pptx
report [Repaired].pptxreport [Repaired].pptx
report [Repaired].pptxLyka Gumatay
 
Uncover Python's Potential in Machine Learning
Uncover Python's Potential in Machine LearningUncover Python's Potential in Machine Learning
Uncover Python's Potential in Machine LearningKan Ouivirach, Ph.D.
 
Data Modelling at Scale
Data Modelling at ScaleData Modelling at Scale
Data Modelling at ScaleDavid Simons
 
High quality Front-End
High quality Front-EndHigh quality Front-End
High quality Front-EndDavid Simons
 
ATDD BY Example With Cucumber
ATDD BY Example With CucumberATDD BY Example With Cucumber
ATDD BY Example With CucumberDoug Morgan
 
Danny Setiawan - How to Increase Conversion with Usability Testing
Danny Setiawan - How to Increase Conversion with Usability TestingDanny Setiawan - How to Increase Conversion with Usability Testing
Danny Setiawan - How to Increase Conversion with Usability TestingAutumn Quarantotto
 
Web User Experience in 2021
Web User Experience in 2021Web User Experience in 2021
Web User Experience in 2021Drew Gorton
 
ISTE 2014: Reading-Writing "Tech-shop"
ISTE 2014: Reading-Writing "Tech-shop" ISTE 2014: Reading-Writing "Tech-shop"
ISTE 2014: Reading-Writing "Tech-shop" glynned
 

Similaire à Smoke tests and mirrors (20)

Switching horses midstream - From Waterfall to Agile
Switching horses midstream - From Waterfall to AgileSwitching horses midstream - From Waterfall to Agile
Switching horses midstream - From Waterfall to Agile
 
ACM Winter 2016 General Meeting
ACM Winter 2016 General Meeting ACM Winter 2016 General Meeting
ACM Winter 2016 General Meeting
 
Four Architectural Patterns
Four Architectural Patterns Four Architectural Patterns
Four Architectural Patterns
 
100% Visibility - Jason Yee - Codemotion Amsterdam 2018
100% Visibility - Jason Yee - Codemotion Amsterdam 2018100% Visibility - Jason Yee - Codemotion Amsterdam 2018
100% Visibility - Jason Yee - Codemotion Amsterdam 2018
 
Deployments in one click!
Deployments in one click!Deployments in one click!
Deployments in one click!
 
SharePoint Saturday Redmond - Building solutions with the future in mind
SharePoint Saturday Redmond - Building solutions with the future in mindSharePoint Saturday Redmond - Building solutions with the future in mind
SharePoint Saturday Redmond - Building solutions with the future in mind
 
Choosing the right database
Choosing the right databaseChoosing the right database
Choosing the right database
 
Canary Deployments on Amazon EKS with Istio - SRV305 - Chicago AWS Summit
Canary Deployments on Amazon EKS with Istio - SRV305 - Chicago AWS SummitCanary Deployments on Amazon EKS with Istio - SRV305 - Chicago AWS Summit
Canary Deployments on Amazon EKS with Istio - SRV305 - Chicago AWS Summit
 
Gain Maximum Visibility into Your Applications
Gain Maximum Visibility into Your Applications Gain Maximum Visibility into Your Applications
Gain Maximum Visibility into Your Applications
 
2016 Prototyping Tools
2016 Prototyping Tools2016 Prototyping Tools
2016 Prototyping Tools
 
report [Repaired].pptx
report [Repaired].pptxreport [Repaired].pptx
report [Repaired].pptx
 
UX for startups
UX for startupsUX for startups
UX for startups
 
Uncover Python's Potential in Machine Learning
Uncover Python's Potential in Machine LearningUncover Python's Potential in Machine Learning
Uncover Python's Potential in Machine Learning
 
Data Modelling at Scale
Data Modelling at ScaleData Modelling at Scale
Data Modelling at Scale
 
High quality Front-End
High quality Front-EndHigh quality Front-End
High quality Front-End
 
ATDD BY Example With Cucumber
ATDD BY Example With CucumberATDD BY Example With Cucumber
ATDD BY Example With Cucumber
 
BoSUSA18 | Bob Moesta| The 5 Skills Of An Innovator
BoSUSA18 | Bob Moesta| The 5 Skills Of An InnovatorBoSUSA18 | Bob Moesta| The 5 Skills Of An Innovator
BoSUSA18 | Bob Moesta| The 5 Skills Of An Innovator
 
Danny Setiawan - How to Increase Conversion with Usability Testing
Danny Setiawan - How to Increase Conversion with Usability TestingDanny Setiawan - How to Increase Conversion with Usability Testing
Danny Setiawan - How to Increase Conversion with Usability Testing
 
Web User Experience in 2021
Web User Experience in 2021Web User Experience in 2021
Web User Experience in 2021
 
ISTE 2014: Reading-Writing "Tech-shop"
ISTE 2014: Reading-Writing "Tech-shop" ISTE 2014: Reading-Writing "Tech-shop"
ISTE 2014: Reading-Writing "Tech-shop"
 

Plus de Benjamin Bischoff

Public Speaking and Procrastination
Public Speaking and ProcrastinationPublic Speaking and Procrastination
Public Speaking and ProcrastinationBenjamin Bischoff
 
Simplifying your test runs with „Make“
Simplifying your test runs with „Make“Simplifying your test runs with „Make“
Simplifying your test runs with „Make“Benjamin Bischoff
 
Of plugins and decorators - trivago's e2e test framework in the spotlight
Of plugins and decorators - trivago's e2e test framework in the spotlightOf plugins and decorators - trivago's e2e test framework in the spotlight
Of plugins and decorators - trivago's e2e test framework in the spotlightBenjamin Bischoff
 
The Bumpy Road Towards Continuous Delivery
The Bumpy Road Towards Continuous DeliveryThe Bumpy Road Towards Continuous Delivery
The Bumpy Road Towards Continuous DeliveryBenjamin Bischoff
 

Plus de Benjamin Bischoff (6)

Public Speaking and Procrastination
Public Speaking and ProcrastinationPublic Speaking and Procrastination
Public Speaking and Procrastination
 
Simplifying your test runs with „Make“
Simplifying your test runs with „Make“Simplifying your test runs with „Make“
Simplifying your test runs with „Make“
 
All about Cluecumber
All about CluecumberAll about Cluecumber
All about Cluecumber
 
Identifying Code Smells
Identifying Code SmellsIdentifying Code Smells
Identifying Code Smells
 
Of plugins and decorators - trivago's e2e test framework in the spotlight
Of plugins and decorators - trivago's e2e test framework in the spotlightOf plugins and decorators - trivago's e2e test framework in the spotlight
Of plugins and decorators - trivago's e2e test framework in the spotlight
 
The Bumpy Road Towards Continuous Delivery
The Bumpy Road Towards Continuous DeliveryThe Bumpy Road Towards Continuous Delivery
The Bumpy Road Towards Continuous Delivery
 

Dernier

XpertSolvers: Your Partner in Building Innovative Software Solutions
XpertSolvers: Your Partner in Building Innovative Software SolutionsXpertSolvers: Your Partner in Building Innovative Software Solutions
XpertSolvers: Your Partner in Building Innovative Software SolutionsMehedi Hasan Shohan
 
KnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptx
KnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptxKnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptx
KnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptxTier1 app
 
5 Signs You Need a Fashion PLM Software.pdf
5 Signs You Need a Fashion PLM Software.pdf5 Signs You Need a Fashion PLM Software.pdf
5 Signs You Need a Fashion PLM Software.pdfWave PLM
 
Asset Management Software - Infographic
Asset Management Software - InfographicAsset Management Software - Infographic
Asset Management Software - InfographicHr365.us smith
 
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...MyIntelliSource, Inc.
 
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...gurkirankumar98700
 
Advancing Engineering with AI through the Next Generation of Strategic Projec...
Advancing Engineering with AI through the Next Generation of Strategic Projec...Advancing Engineering with AI through the Next Generation of Strategic Projec...
Advancing Engineering with AI through the Next Generation of Strategic Projec...OnePlan Solutions
 
Der Spagat zwischen BIAS und FAIRNESS (2024)
Der Spagat zwischen BIAS und FAIRNESS (2024)Der Spagat zwischen BIAS und FAIRNESS (2024)
Der Spagat zwischen BIAS und FAIRNESS (2024)OPEN KNOWLEDGE GmbH
 
cybersecurity notes for mca students for learning
cybersecurity notes for mca students for learningcybersecurity notes for mca students for learning
cybersecurity notes for mca students for learningVitsRangannavar
 
Optimizing AI for immediate response in Smart CCTV
Optimizing AI for immediate response in Smart CCTVOptimizing AI for immediate response in Smart CCTV
Optimizing AI for immediate response in Smart CCTVshikhaohhpro
 
chapter--4-software-project-planning.ppt
chapter--4-software-project-planning.pptchapter--4-software-project-planning.ppt
chapter--4-software-project-planning.pptkotipi9215
 
Alluxio Monthly Webinar | Cloud-Native Model Training on Distributed Data
Alluxio Monthly Webinar | Cloud-Native Model Training on Distributed DataAlluxio Monthly Webinar | Cloud-Native Model Training on Distributed Data
Alluxio Monthly Webinar | Cloud-Native Model Training on Distributed DataAlluxio, Inc.
 
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...MyIntelliSource, Inc.
 
Unveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time ApplicationsUnveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time ApplicationsAlberto González Trastoy
 
Cloud Management Software Platforms: OpenStack
Cloud Management Software Platforms: OpenStackCloud Management Software Platforms: OpenStack
Cloud Management Software Platforms: OpenStackVICTOR MAESTRE RAMIREZ
 
Building Real-Time Data Pipelines: Stream & Batch Processing workshop Slide
Building Real-Time Data Pipelines: Stream & Batch Processing workshop SlideBuilding Real-Time Data Pipelines: Stream & Batch Processing workshop Slide
Building Real-Time Data Pipelines: Stream & Batch Processing workshop SlideChristina Lin
 
Adobe Marketo Engage Deep Dives: Using Webhooks to Transfer Data
Adobe Marketo Engage Deep Dives: Using Webhooks to Transfer DataAdobe Marketo Engage Deep Dives: Using Webhooks to Transfer Data
Adobe Marketo Engage Deep Dives: Using Webhooks to Transfer DataBradBedford3
 
EY_Graph Database Powered Sustainability
EY_Graph Database Powered SustainabilityEY_Graph Database Powered Sustainability
EY_Graph Database Powered SustainabilityNeo4j
 
Project Based Learning (A.I).pptx detail explanation
Project Based Learning (A.I).pptx detail explanationProject Based Learning (A.I).pptx detail explanation
Project Based Learning (A.I).pptx detail explanationkaushalgiri8080
 

Dernier (20)

XpertSolvers: Your Partner in Building Innovative Software Solutions
XpertSolvers: Your Partner in Building Innovative Software SolutionsXpertSolvers: Your Partner in Building Innovative Software Solutions
XpertSolvers: Your Partner in Building Innovative Software Solutions
 
KnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptx
KnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptxKnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptx
KnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptx
 
5 Signs You Need a Fashion PLM Software.pdf
5 Signs You Need a Fashion PLM Software.pdf5 Signs You Need a Fashion PLM Software.pdf
5 Signs You Need a Fashion PLM Software.pdf
 
Asset Management Software - Infographic
Asset Management Software - InfographicAsset Management Software - Infographic
Asset Management Software - Infographic
 
Call Girls In Mukherjee Nagar 📱 9999965857 🤩 Delhi 🫦 HOT AND SEXY VVIP 🍎 SE...
Call Girls In Mukherjee Nagar 📱  9999965857  🤩 Delhi 🫦 HOT AND SEXY VVIP 🍎 SE...Call Girls In Mukherjee Nagar 📱  9999965857  🤩 Delhi 🫦 HOT AND SEXY VVIP 🍎 SE...
Call Girls In Mukherjee Nagar 📱 9999965857 🤩 Delhi 🫦 HOT AND SEXY VVIP 🍎 SE...
 
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
 
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...
 
Advancing Engineering with AI through the Next Generation of Strategic Projec...
Advancing Engineering with AI through the Next Generation of Strategic Projec...Advancing Engineering with AI through the Next Generation of Strategic Projec...
Advancing Engineering with AI through the Next Generation of Strategic Projec...
 
Der Spagat zwischen BIAS und FAIRNESS (2024)
Der Spagat zwischen BIAS und FAIRNESS (2024)Der Spagat zwischen BIAS und FAIRNESS (2024)
Der Spagat zwischen BIAS und FAIRNESS (2024)
 
cybersecurity notes for mca students for learning
cybersecurity notes for mca students for learningcybersecurity notes for mca students for learning
cybersecurity notes for mca students for learning
 
Optimizing AI for immediate response in Smart CCTV
Optimizing AI for immediate response in Smart CCTVOptimizing AI for immediate response in Smart CCTV
Optimizing AI for immediate response in Smart CCTV
 
chapter--4-software-project-planning.ppt
chapter--4-software-project-planning.pptchapter--4-software-project-planning.ppt
chapter--4-software-project-planning.ppt
 
Alluxio Monthly Webinar | Cloud-Native Model Training on Distributed Data
Alluxio Monthly Webinar | Cloud-Native Model Training on Distributed DataAlluxio Monthly Webinar | Cloud-Native Model Training on Distributed Data
Alluxio Monthly Webinar | Cloud-Native Model Training on Distributed Data
 
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
 
Unveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time ApplicationsUnveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
 
Cloud Management Software Platforms: OpenStack
Cloud Management Software Platforms: OpenStackCloud Management Software Platforms: OpenStack
Cloud Management Software Platforms: OpenStack
 
Building Real-Time Data Pipelines: Stream & Batch Processing workshop Slide
Building Real-Time Data Pipelines: Stream & Batch Processing workshop SlideBuilding Real-Time Data Pipelines: Stream & Batch Processing workshop Slide
Building Real-Time Data Pipelines: Stream & Batch Processing workshop Slide
 
Adobe Marketo Engage Deep Dives: Using Webhooks to Transfer Data
Adobe Marketo Engage Deep Dives: Using Webhooks to Transfer DataAdobe Marketo Engage Deep Dives: Using Webhooks to Transfer Data
Adobe Marketo Engage Deep Dives: Using Webhooks to Transfer Data
 
EY_Graph Database Powered Sustainability
EY_Graph Database Powered SustainabilityEY_Graph Database Powered Sustainability
EY_Graph Database Powered Sustainability
 
Project Based Learning (A.I).pptx detail explanation
Project Based Learning (A.I).pptx detail explanationProject Based Learning (A.I).pptx detail explanation
Project Based Learning (A.I).pptx detail explanation
 

Smoke tests and mirrors

  • 1. S M O K E T E S T S & M I R R O R S Benjamin Bischoff softwaretester.blog
  • 2. T H I N G S T O TA L K A B O U T • Introduction • A short glimpse into magic • Nine magic principles in software • Final thoughts softwaretester.blog
  • 3. O B L I G AT O RY „ A B O U T M E “ S L I D E • Benjamin Bischoff • Test automation engineer @ trivago • 22 years in tech • 7 years of SDET experience softwaretester.blog
  • 4. S H A M E L E S S P L U G • „Writing API Tests with Karate“ • Packt Publishing softwaretester.blog
  • 5. Y E T A N O T H E R „ A B O U T M E “ S L I D E • Started magic at the age of eight • Favourite genre: close-up card magic softwaretester.blog
  • 6. M A K I N G C O N N E C T I O N S S P O I L E R A L E R T softwaretester.blog
  • 7. A S H O R T G L I M P S E I N T O M A G I C softwaretester.blog
  • 8. – L A W R E N C E H A S S , P H I L O S O P H E R A N D M A G I C I A N „The artful performance of impossible things that generates energy, delight, and wonder.“ softwaretester.blog
  • 9. TA X O N O M Y • Stage illusions • Parlor • Close-up • Escapology • Pickpocket • Mentalism • Séances • Children’s magic • Classical • Mechanical • Online magic • Mathemagic • Corporate • Bizarre • Street • Comedy • Quick change • Camera softwaretester.blog
  • 10. I L L U S I O N T Y P E S • Production • Vanish • Transformation • Restauration • Transposition • Teleportation • Escape • Levitation • Penetration • Prediction softwaretester.blog
  • 11. I M P O R TA N T D O C U M E N T S 1700 - 2000 B.C. 1584 1674 softwaretester.blog
  • 12. I M P O R TA N T I N F L U E N C E R S Dai Vernon 1894 – 1992 Tony Slydini 1901 – 1991 Juan Tamariz * 1942 softwaretester.blog
  • 13. – A R T H U R C . C L A R K E , W R I T E R „Any sufficiently advanced technology is indistinguishable from magic.“ softwaretester.blog
  • 14. M A G I C P R I N C I P L E S I N S O F T WA R E softwaretester.blog
  • 15. I . ( M I S ) D I R E C T I O N softwaretester.blog
  • 16. ( M I S ) D I R E C T I O N I N M A G I C • Mislead but not confuse spectators • The large action covers the small • The small action covers the large softwaretester.blog
  • 17. ( M I S ) D I R E C T I O N I N S O F T WA R E • Misdirection in bug analysis: not seeing the wood for the trees • Unintentional misdirection through bad software design decisions softwaretester.blog
  • 18. ( M I S ) D I R E C T I O N I N B U G T R A C K I N G • Exposing too much information • Staying in the perimeter of the error instead of stepping out • Not giving enough information (e.g. swallowing exceptions) softwaretester.blog
  • 19. – H A R RY H O U D I N I , M A G I C I A N „ What the eyes see and the ears hear, the mind believes.“ softwaretester.blog
  • 20. I I . F O R C E softwaretester.blog
  • 21. F O R C E I N M A G I C • Giving the illusion of free choice • Forcing a thought, thing or action • Forcing yourself 🫤 softwaretester.blog
  • 22. F O R C E I N S O F T WA R E • Forcing yourself or your solutions and tools onto others • Looking down from your ivory tower 🫤 softwaretester.blog
  • 23. – D A I V E R N O N , M A G I C I A N „In magic, today as always, the effect is what counts. The method or methods used are always purely secondary.“ softwaretester.blog
  • 24. I I I . R E P E T I T I O N softwaretester.blog
  • 25. R E P E T I T I O N I N M A G I C • Repetition as a means of perfection • Never repeat a trick rule • Easy to figure out? • Same effect, different methods? • Is it worth repeating? softwaretester.blog
  • 26. R E P E T I T I O N I N S O F T WA R E • Repetition is the key to regression testing • Spot behaviour changes easily • Ensure a known state of the system • Repetition as training (katas) softwaretester.blog
  • 27. R E P E T I T I O N I N M O N I T O R I N G • Repeating user scenarios as synthetic monitoring • Otherwise, it is only a one-time snapshot softwaretester.blog
  • 28. – B R U C E L E E , M A R T I A L A R T I S T „I fear not the man who has practiced 10,000 kicks once, but I fear the man who has practiced one kick 10,000 times.“ softwaretester.blog
  • 29. I V. C L A R I T Y softwaretester.blog
  • 30. C L A R I T Y I N M A G I C • Keep your effect clear • Easy to follow and understand • Establish the initial state so that the changed state can be recognised softwaretester.blog
  • 31. C L A R I T Y I N S O F T WA R E • Keeping test scenarios compact • Linking cause and effect • Avoiding boredom • Keeping focus softwaretester.blog
  • 32. C L A R I T Y I N R E P O R T I N G • Directly see test results • Relevant information without clutter • Same structure across all projects softwaretester.blog
  • 33. – D A I V E R N O N , M A G I C I A N „Confusion is not magic.“ softwaretester.blog
  • 34. V. F R A M I N G softwaretester.blog
  • 35. F R A M I N G I N M A G I C • Finding the context for an effect • Contented context elevates magic beyond puzzles and makes it meaningful • Situational context must fit setting, occasion and location softwaretester.blog
  • 36. F R A M I N G I N S O F T WA R E • Having the best idea and intention is not enough • If you phrase it poorly, it can fail miserably softwaretester.blog
  • 37. F R A M I N G I N T E A M I N T E N T • Too focussed on providing solutions • Detached from people and needs • Forgetting the why softwaretester.blog
  • 38. – E U G E N E B U R G E R , M A G I C I A N „The house of magic has many rooms.“ softwaretester.blog
  • 39. V I . T I M E L A P S E softwaretester.blog
  • 40. T I M E L A P S E I N M A G I C • Time lapse is a form of misdirection • The longer the time between two events is, the less clear it is softwaretester.blog
  • 41. T I M E L A P S E I N S O F T WA R E • Reporting and monitoring has to be on time • Otherwise, it means nothing • Timing is important softwaretester.blog
  • 42. T I M E L A P S E I N T E S T F E E D B A C K • Shifting left • Fail fast / learn fast • Fast communication channels softwaretester.blog
  • 43. – A L B E R T E I N S T E I N , T H E O R E T I C A L P H Y S I C I S T „The only reason for time is so that everything doesn’t happen at once.“ softwaretester.blog
  • 44. V I I . C O N V I C T I O N softwaretester.blog
  • 45. C O N V I C T I O N I N M A G I C • Spectators have to be convinced of an initial state to fully appreciate changes • It is better to convince implicitly softwaretester.blog
  • 46. C O N V I C T I O N I N S O F T WA R E • Conviction is stronger than assumptions • The intention of a system has to be clear to detect deviation • This is where BDD comes in softwaretester.blog
  • 47. C O N V I C T I O N I N C O M M U N I C AT I O N • Trust that all give their best and work towards the same cause • Get everyone on the same page • Speak a ubiquitous language softwaretester.blog
  • 48. – T E L L E R , M A G I C I A N „We estimate the intelligence of the audience as being greater than ours.“ softwaretester.blog
  • 49. V I I I . FA I L U R E softwaretester.blog
  • 50. FA I L U R E I N M A G I C • Stylistic device • Improving magic by analysing failed performances softwaretester.blog
  • 51. FA I L U R E I N S O F T WA R E • Don’t trust tests that never failed before • Failure is the essence of TDD • If something fails, it should be covered with a test softwaretester.blog
  • 52. P R E S E N T I N G P R O C E S S FA I L U R E S • SDLC Post-mortems • Present failures and lessons learned • It is one of the best tools to improve softwaretester.blog
  • 53. – T H O M A S A . E D I S O N , I N V E N T O R „I have not failed. I've just found 10,000 ways that won't work.“ softwaretester.blog
  • 54. I X . H I D D E N C O M P L E X I T Y softwaretester.blog
  • 55. H I D D E N C O M P L E X I T Y I N M A G I C • Magicians want to hide their skills • Ideally, the magic should happen on its own softwaretester.blog
  • 56. H I D D E N C O M P L E X I T Y I N S O F T WA R E • Only show choices when they are needed • Don’t propagate stack traces to the front end • Make error messages meaningful and actionable softwaretester.blog
  • 57. S I M P L I F I C AT I O N I N T H E U I / U X • Limiting options for a better user experience • Disabling elements depending on the context • Straight forward happy path softwaretester.blog
  • 58. – G R A D Y B O O C H , S O F T WA R E E N G I N E E R „The function of good software is to make the complex appear to be simple.“ softwaretester.blog
  • 59. H I D D E N C O M P L E X I T Y I N T H E C L I • Putting a simple proxy in front of a complex system softwaretester.blog
  • 60. – S T U A R T C R O C K E R , Q A E N G I N E E R „Quality is the absence of unnecessary friction.“ softwaretester.blog
  • 61. F I N A L T H O U G H T S W H E R E T O G O F R O M H E R E softwaretester.blog
  • 62. S PA R K I N G C R E AT I V I T Y • Transfer of learning is really satisfying • Thought exercises to break out of „programmer’s block“ • Try it with your own hobbies and interests! softwaretester.blog
  • 63. K N O W L E D G E E X C H A N G E • Regular QA knowledge sharing meetings at trivago • Half of the topics are non-technical • A quarter of the topics are completely unrelated softwaretester.blog
  • 64. “ B E S T P R A C T I C E S ” • There are no best practices for every situation • They can be adjusted… • …or even turned upside down softwaretester.blog
  • 65. M A K I N G C O N N E C T I O N S T H E P O I N T O F T H I S TA L K softwaretester.blog
  • 66. T H A N K Y O U ! Benjamin Bischoff softwaretester.blog