SlideShare uma empresa Scribd logo
1 de 17
Baixar para ler offline
TD
AM Tutorial
10/1/2013 8:30:00 AM

"The Craft of Bug Investigation"
Presented by:
Jon Bach
eBay

Brought to you by:

340 Corporate Way, Suite 300, Orange Park, FL 32073
888-268-8770 ∙ 904-278-0524 ∙ sqeinfo@sqe.com ∙ www.sqe.com
Jon Bach
eBay, Inc.
With more than eighteen years of experience in software testing, Jon Bach has held technical
and managerial positions in companies including Hewlett-Packard and Microsoft. In his current
role as director of Live Site Quality for eBay, Jon is dedicated to building “end-to-end” tests
(activity flows) in eBay’s core sites to discover important bugs that threaten its core business.
He is most notable for creating, with his brother James, Session-Based Test Management, a
method to manage and report exploratory testing.
The Craft of (black box)
Bug Investigation

Jon Bach
QE Director, eBay
jobach@ebay.com
STAR West 2013

Preamble

These next few hours are designed with
exercises that lead you through ways of
thinking that help you narrow down a bug.
We’ll discuss techniques for bug isolation,
reproducing intermittent bugs, and skills to
help you know when you’ve gone as far as
is reasonable before handing it off.

eBay Inc. confidential

1
A morning of investigation

Psychic Reader

Art Show

Mysterious Spheres

Gettysbug Address

Checkout Checking Out?

Out-of-Bounds

eBay Inc. confidential

}

}

}

}

}

Ways we find bugs

CIDTESTDSFDPOTCRUSSPICSTMPLFDSFSCURA
Project Environment

Product Elements

Quality Criteria

Development Criteria

General Test Techniques

Customers
Information
Developer relations
Team
Equipment & tools
Schedule
Test Items
Deliverables

Structure
Function
Data
Platform
Operations
Time

Capability
Reliability
Usability
Security
Scalability
Performance
Installability
Compatibility

Supportability
Testability
Maintainability
Portability
Localizability

Function testing
Domain testing
Stress testing
Flow testing
Scenario testing
Claims testing
User testing
Risk testing
Automatic testing

eBay Inc. confidential

2
How *well* do we find bugs?
Some Investigation Skills and Tactics
“MR.Q COMC GOARABC R&R?”
Modeling

Chartering

Generating/Elaborating

Recording

Resourcing

Observing

Overproduction/Abandonment

Reporting

Questioning

Manipulating

Abandonment/Recovery

Collaboration

Refocusing
Alternating
Branching/Backtracking
Conjecturing

Investigation is a mindset using this skillset.
eBay Inc. confidential

How well do we investigate them?

Too Much Quality
Further time and effort
is a waste of resources.
floating line

Good enough quality bar
Further time and effort
is crucial.

Unacceptable Quality

eBay Inc. confidential

3
Abductive Inference
Abductive inference means finding the best
explanation for a set of data.
1.

Collect data.

2.

Find several explanations that account for the data.

3.

Find more data that is either consistent or inconsistent
with explanations.

4.

Choose the best explanation that accounts for the
important data, or keep searching.

Jump to conjectures, not conclusions
eBay Inc. confidential

Is Checkout Checking Out?

This is a dip in bids we saw in Production.
What questions do you have to troubleshoot this?

eBay Inc. confidential

8

4
Topics for investigation (FORCOSTTTIP)
• Feature – Do we know what happens when people bid?
• Origin -- When did this start happening?
• Recent – Did we just push code to Production?
• Consistency / Correlation -- What happened yesterday, tomorrow? Are there
other graphs and metrics?
• Overlap – Is there any other process happening?
• Security – Is it malicious? Intentional?
• Terminology -- What kinds of “bids”? US, UK, International?
• Third-Party / Silent Partner – What’s not in the room? What sort of information
have we NOT heard from?
• Truth is out there – does someone already know about this?
• Instrumentation – is the graph wrong? Can I get more data?
• Prediction – can we test a conjecture with a prediction
eBay Inc. confidential

9

Exercise: Psychic Reader

eBay Inc. confidential

5
Lessons

You can be psychic, too
You may be clue-less, for now
Try “defocusing”
Are you just following orders?

eBay Inc. confidential

Exercise: Mysterious Spheres

eBay Inc. confidential

6
Lessons

If it fails, whose fault is it?
Assumptions need nourishment
Oracles are in “control”
“Elsewhere”, is a useful thought

eBay Inc. confidential

Exercise: Out-of-Bounds

eBay Inc. confidential

7
Lessons

Be a “model” tester
Stagehands work behind curtains
Outside data is not inside data
Computers are our slaves

eBay Inc. confidential

Exercise: Art Show

What is my Operating Rule?
What do you notice?
What (crazy) test haven’t you tried?

eBay Inc. confidential

8
Lessons

“You’re so one dimensional”
Jump to *conjectures*
Yes, I *do* look FAT in this. (M vs. O)
Breaking “rules”!

eBay Inc. confidential

Exercise: Gettysbug Address

Does it work?
What is the hidden feature?
What story does the data tell?

eBay Inc. confidential

9
Lessons

The Rumble Strip heuristic
Missing a mission?
Be “thoughtless” (random is good)
Defocus: do *anything*, *differently*

eBay Inc. confidential

Exercise: What’s the Pattern?

Investigation of behavior is like
trying to repro a bug… what is
the behavior of this app?

eBay Inc. confidential

10
Lessons

Checking is different than testing
Collaboration is a kick
Not all characters are created equal
Description takes practice

eBay Inc. confidential

How well do we investigate them?

Too Much Quality
Further time and effort
is a waste of resources.
floating line

Good enough quality bar
Further time and effort
is crucial.

Unacceptable Quality

eBay Inc. confidential

11
How much investigation?
1) Sufficient benefits
2) No critical problems
3) The benefits outweigh the problems
4) In the present situation, and all things
considered, improvement would be more harmful
than helpful
The answer must be “Yes” to all four criteria,
but ask “for whom, what, and when?”
eBay Inc. confidential

Intermittent Bugs: Observation

Bad observation
Irrelevant observation
Bad memory
Misattribution
Misrepresentation
Unreliable oracle
Unreliable communication

Link
eBay Inc. confidential

12
Intermittent Bugs: System

Purposeful change, and then back to original
Accidental change
Platform change
Flaky hardware
Trespassing system
Executable corruption
Component competition

eBay Inc. confidential

Intermittent Bugs: Machine State
Frozen conditional
Improper Initialization
Resource denial
Progressive data corruption
Progressive destabilization
Overflow
Occasional functions
Different mode or option setting

eBay Inc. confidential

13
Intermittent Bugs: Input

Accidental
Secret boundaries or conditions
Different profile
Ghost input (alternative source)
Simultaneous action as others
Compromised input
Timing issues
Crazy Combinations

eBay Inc. confidential

Intermittent Bugs: You?
You may not be aware of...

…variables of influence
…sources of distortion in your observations
…available tools that might help
…boundaries and their characteristics
…the system's missing / extra functions
…complex / competing algorithms

eBay Inc. confidential

14
A few (free) investigation tools
Httpwatch
-- displays log of requests and responses

Firebug
– inspect HTML
-- JavaScript debugger

WAVE
– accessibility errors

eBay Inc. confidential

More info
• ET Dynamics:
http://www.satisfice.com/articles/et-dynamics.pdf
• Test Heuristics and Planning

http://www.satisfice.com
• Context-Driven Software Testing
http://groups.yahoo.com/group/software-testing
• Center for Software Testing Education and Research
http://www.testingeducation.org/BBST
• Books related to Exploratory Testing skills and tactics
http://www.testingreflections.com/node/view/3190
• Scenario testing examples
– http://www.testingeducation.org/a/scenario2.pdf
eBay Inc. confidential

15

Mais conteúdo relacionado

Destaque

Database Development: The Object-oriented and Test-driven Way
Database Development: The Object-oriented and Test-driven WayDatabase Development: The Object-oriented and Test-driven Way
Database Development: The Object-oriented and Test-driven WayTechWell
 
Danger! Danger! Your Mobile Applications Are Not Secure
Danger! Danger! Your Mobile Applications Are Not SecureDanger! Danger! Your Mobile Applications Are Not Secure
Danger! Danger! Your Mobile Applications Are Not SecureTechWell
 
Enterprise Lean-Agile: It’s More Than Scrum
Enterprise Lean-Agile: It’s More Than ScrumEnterprise Lean-Agile: It’s More Than Scrum
Enterprise Lean-Agile: It’s More Than ScrumTechWell
 
Using Non-Violent Communication Skills for Managing Team Conflict
Using Non-Violent Communication Skills for Managing Team ConflictUsing Non-Violent Communication Skills for Managing Team Conflict
Using Non-Violent Communication Skills for Managing Team ConflictTechWell
 
Information Obfuscation: Protecting Corporate Data
Information Obfuscation: Protecting Corporate DataInformation Obfuscation: Protecting Corporate Data
Information Obfuscation: Protecting Corporate DataTechWell
 
How to Break Software: Embedded Edition
How to Break Software: Embedded EditionHow to Break Software: Embedded Edition
How to Break Software: Embedded EditionTechWell
 

Destaque (6)

Database Development: The Object-oriented and Test-driven Way
Database Development: The Object-oriented and Test-driven WayDatabase Development: The Object-oriented and Test-driven Way
Database Development: The Object-oriented and Test-driven Way
 
Danger! Danger! Your Mobile Applications Are Not Secure
Danger! Danger! Your Mobile Applications Are Not SecureDanger! Danger! Your Mobile Applications Are Not Secure
Danger! Danger! Your Mobile Applications Are Not Secure
 
Enterprise Lean-Agile: It’s More Than Scrum
Enterprise Lean-Agile: It’s More Than ScrumEnterprise Lean-Agile: It’s More Than Scrum
Enterprise Lean-Agile: It’s More Than Scrum
 
Using Non-Violent Communication Skills for Managing Team Conflict
Using Non-Violent Communication Skills for Managing Team ConflictUsing Non-Violent Communication Skills for Managing Team Conflict
Using Non-Violent Communication Skills for Managing Team Conflict
 
Information Obfuscation: Protecting Corporate Data
Information Obfuscation: Protecting Corporate DataInformation Obfuscation: Protecting Corporate Data
Information Obfuscation: Protecting Corporate Data
 
How to Break Software: Embedded Edition
How to Break Software: Embedded EditionHow to Break Software: Embedded Edition
How to Break Software: Embedded Edition
 

Mais de TechWell

Failing and Recovering
Failing and RecoveringFailing and Recovering
Failing and RecoveringTechWell
 
Instill a DevOps Testing Culture in Your Team and Organization
Instill a DevOps Testing Culture in Your Team and Organization Instill a DevOps Testing Culture in Your Team and Organization
Instill a DevOps Testing Culture in Your Team and Organization TechWell
 
Test Design for Fully Automated Build Architecture
Test Design for Fully Automated Build ArchitectureTest Design for Fully Automated Build Architecture
Test Design for Fully Automated Build ArchitectureTechWell
 
System-Level Test Automation: Ensuring a Good Start
System-Level Test Automation: Ensuring a Good StartSystem-Level Test Automation: Ensuring a Good Start
System-Level Test Automation: Ensuring a Good StartTechWell
 
Build Your Mobile App Quality and Test Strategy
Build Your Mobile App Quality and Test StrategyBuild Your Mobile App Quality and Test Strategy
Build Your Mobile App Quality and Test StrategyTechWell
 
Testing Transformation: The Art and Science for Success
Testing Transformation: The Art and Science for SuccessTesting Transformation: The Art and Science for Success
Testing Transformation: The Art and Science for SuccessTechWell
 
Implement BDD with Cucumber and SpecFlow
Implement BDD with Cucumber and SpecFlowImplement BDD with Cucumber and SpecFlow
Implement BDD with Cucumber and SpecFlowTechWell
 
Develop WebDriver Automated Tests—and Keep Your Sanity
Develop WebDriver Automated Tests—and Keep Your SanityDevelop WebDriver Automated Tests—and Keep Your Sanity
Develop WebDriver Automated Tests—and Keep Your SanityTechWell
 
Eliminate Cloud Waste with a Holistic DevOps Strategy
Eliminate Cloud Waste with a Holistic DevOps StrategyEliminate Cloud Waste with a Holistic DevOps Strategy
Eliminate Cloud Waste with a Holistic DevOps StrategyTechWell
 
Transform Test Organizations for the New World of DevOps
Transform Test Organizations for the New World of DevOpsTransform Test Organizations for the New World of DevOps
Transform Test Organizations for the New World of DevOpsTechWell
 
The Fourth Constraint in Project Delivery—Leadership
The Fourth Constraint in Project Delivery—LeadershipThe Fourth Constraint in Project Delivery—Leadership
The Fourth Constraint in Project Delivery—LeadershipTechWell
 
Resolve the Contradiction of Specialists within Agile Teams
Resolve the Contradiction of Specialists within Agile TeamsResolve the Contradiction of Specialists within Agile Teams
Resolve the Contradiction of Specialists within Agile TeamsTechWell
 
Pin the Tail on the Metric: A Field-Tested Agile Game
Pin the Tail on the Metric: A Field-Tested Agile GamePin the Tail on the Metric: A Field-Tested Agile Game
Pin the Tail on the Metric: A Field-Tested Agile GameTechWell
 
Agile Performance Holarchy (APH)—A Model for Scaling Agile Teams
Agile Performance Holarchy (APH)—A Model for Scaling Agile TeamsAgile Performance Holarchy (APH)—A Model for Scaling Agile Teams
Agile Performance Holarchy (APH)—A Model for Scaling Agile TeamsTechWell
 
A Business-First Approach to DevOps Implementation
A Business-First Approach to DevOps ImplementationA Business-First Approach to DevOps Implementation
A Business-First Approach to DevOps ImplementationTechWell
 
Databases in a Continuous Integration/Delivery Process
Databases in a Continuous Integration/Delivery ProcessDatabases in a Continuous Integration/Delivery Process
Databases in a Continuous Integration/Delivery ProcessTechWell
 
Mobile Testing: What—and What Not—to Automate
Mobile Testing: What—and What Not—to AutomateMobile Testing: What—and What Not—to Automate
Mobile Testing: What—and What Not—to AutomateTechWell
 
Cultural Intelligence: A Key Skill for Success
Cultural Intelligence: A Key Skill for SuccessCultural Intelligence: A Key Skill for Success
Cultural Intelligence: A Key Skill for SuccessTechWell
 
Turn the Lights On: A Power Utility Company's Agile Transformation
Turn the Lights On: A Power Utility Company's Agile TransformationTurn the Lights On: A Power Utility Company's Agile Transformation
Turn the Lights On: A Power Utility Company's Agile TransformationTechWell
 

Mais de TechWell (20)

Failing and Recovering
Failing and RecoveringFailing and Recovering
Failing and Recovering
 
Instill a DevOps Testing Culture in Your Team and Organization
Instill a DevOps Testing Culture in Your Team and Organization Instill a DevOps Testing Culture in Your Team and Organization
Instill a DevOps Testing Culture in Your Team and Organization
 
Test Design for Fully Automated Build Architecture
Test Design for Fully Automated Build ArchitectureTest Design for Fully Automated Build Architecture
Test Design for Fully Automated Build Architecture
 
System-Level Test Automation: Ensuring a Good Start
System-Level Test Automation: Ensuring a Good StartSystem-Level Test Automation: Ensuring a Good Start
System-Level Test Automation: Ensuring a Good Start
 
Build Your Mobile App Quality and Test Strategy
Build Your Mobile App Quality and Test StrategyBuild Your Mobile App Quality and Test Strategy
Build Your Mobile App Quality and Test Strategy
 
Testing Transformation: The Art and Science for Success
Testing Transformation: The Art and Science for SuccessTesting Transformation: The Art and Science for Success
Testing Transformation: The Art and Science for Success
 
Implement BDD with Cucumber and SpecFlow
Implement BDD with Cucumber and SpecFlowImplement BDD with Cucumber and SpecFlow
Implement BDD with Cucumber and SpecFlow
 
Develop WebDriver Automated Tests—and Keep Your Sanity
Develop WebDriver Automated Tests—and Keep Your SanityDevelop WebDriver Automated Tests—and Keep Your Sanity
Develop WebDriver Automated Tests—and Keep Your Sanity
 
Ma 15
Ma 15Ma 15
Ma 15
 
Eliminate Cloud Waste with a Holistic DevOps Strategy
Eliminate Cloud Waste with a Holistic DevOps StrategyEliminate Cloud Waste with a Holistic DevOps Strategy
Eliminate Cloud Waste with a Holistic DevOps Strategy
 
Transform Test Organizations for the New World of DevOps
Transform Test Organizations for the New World of DevOpsTransform Test Organizations for the New World of DevOps
Transform Test Organizations for the New World of DevOps
 
The Fourth Constraint in Project Delivery—Leadership
The Fourth Constraint in Project Delivery—LeadershipThe Fourth Constraint in Project Delivery—Leadership
The Fourth Constraint in Project Delivery—Leadership
 
Resolve the Contradiction of Specialists within Agile Teams
Resolve the Contradiction of Specialists within Agile TeamsResolve the Contradiction of Specialists within Agile Teams
Resolve the Contradiction of Specialists within Agile Teams
 
Pin the Tail on the Metric: A Field-Tested Agile Game
Pin the Tail on the Metric: A Field-Tested Agile GamePin the Tail on the Metric: A Field-Tested Agile Game
Pin the Tail on the Metric: A Field-Tested Agile Game
 
Agile Performance Holarchy (APH)—A Model for Scaling Agile Teams
Agile Performance Holarchy (APH)—A Model for Scaling Agile TeamsAgile Performance Holarchy (APH)—A Model for Scaling Agile Teams
Agile Performance Holarchy (APH)—A Model for Scaling Agile Teams
 
A Business-First Approach to DevOps Implementation
A Business-First Approach to DevOps ImplementationA Business-First Approach to DevOps Implementation
A Business-First Approach to DevOps Implementation
 
Databases in a Continuous Integration/Delivery Process
Databases in a Continuous Integration/Delivery ProcessDatabases in a Continuous Integration/Delivery Process
Databases in a Continuous Integration/Delivery Process
 
Mobile Testing: What—and What Not—to Automate
Mobile Testing: What—and What Not—to AutomateMobile Testing: What—and What Not—to Automate
Mobile Testing: What—and What Not—to Automate
 
Cultural Intelligence: A Key Skill for Success
Cultural Intelligence: A Key Skill for SuccessCultural Intelligence: A Key Skill for Success
Cultural Intelligence: A Key Skill for Success
 
Turn the Lights On: A Power Utility Company's Agile Transformation
Turn the Lights On: A Power Utility Company's Agile TransformationTurn the Lights On: A Power Utility Company's Agile Transformation
Turn the Lights On: A Power Utility Company's Agile Transformation
 

Último

08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking MenDelhi Call girls
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024Rafal Los
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slidevu2urc
 
A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024Results
 
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersEnhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersThousandEyes
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationMichael W. Hawkins
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Drew Madelung
 
Google AI Hackathon: LLM based Evaluator for RAG
Google AI Hackathon: LLM based Evaluator for RAGGoogle AI Hackathon: LLM based Evaluator for RAG
Google AI Hackathon: LLM based Evaluator for RAGSujit Pal
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Miguel Araújo
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptxHampshireHUG
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking MenDelhi Call girls
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking MenDelhi Call girls
 
SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024Scott Keck-Warren
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdfhans926745
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Igalia
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationSafe Software
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsEnterprise Knowledge
 
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | DelhiFULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhisoniya singh
 
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...gurkirankumar98700
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityPrincipled Technologies
 

Último (20)

08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
 
A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024
 
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersEnhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
Google AI Hackathon: LLM based Evaluator for RAG
Google AI Hackathon: LLM based Evaluator for RAGGoogle AI Hackathon: LLM based Evaluator for RAG
Google AI Hackathon: LLM based Evaluator for RAG
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
 
SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
 
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | DelhiFULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
 
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
 

The Craft of Bug Investigation

  • 1. TD AM Tutorial 10/1/2013 8:30:00 AM "The Craft of Bug Investigation" Presented by: Jon Bach eBay Brought to you by: 340 Corporate Way, Suite 300, Orange Park, FL 32073 888-268-8770 ∙ 904-278-0524 ∙ sqeinfo@sqe.com ∙ www.sqe.com
  • 2. Jon Bach eBay, Inc. With more than eighteen years of experience in software testing, Jon Bach has held technical and managerial positions in companies including Hewlett-Packard and Microsoft. In his current role as director of Live Site Quality for eBay, Jon is dedicated to building “end-to-end” tests (activity flows) in eBay’s core sites to discover important bugs that threaten its core business. He is most notable for creating, with his brother James, Session-Based Test Management, a method to manage and report exploratory testing.
  • 3. The Craft of (black box) Bug Investigation Jon Bach QE Director, eBay jobach@ebay.com STAR West 2013 Preamble These next few hours are designed with exercises that lead you through ways of thinking that help you narrow down a bug. We’ll discuss techniques for bug isolation, reproducing intermittent bugs, and skills to help you know when you’ve gone as far as is reasonable before handing it off. eBay Inc. confidential 1
  • 4. A morning of investigation Psychic Reader Art Show Mysterious Spheres Gettysbug Address Checkout Checking Out? Out-of-Bounds eBay Inc. confidential } } } } } Ways we find bugs CIDTESTDSFDPOTCRUSSPICSTMPLFDSFSCURA Project Environment Product Elements Quality Criteria Development Criteria General Test Techniques Customers Information Developer relations Team Equipment & tools Schedule Test Items Deliverables Structure Function Data Platform Operations Time Capability Reliability Usability Security Scalability Performance Installability Compatibility Supportability Testability Maintainability Portability Localizability Function testing Domain testing Stress testing Flow testing Scenario testing Claims testing User testing Risk testing Automatic testing eBay Inc. confidential 2
  • 5. How *well* do we find bugs? Some Investigation Skills and Tactics “MR.Q COMC GOARABC R&R?” Modeling Chartering Generating/Elaborating Recording Resourcing Observing Overproduction/Abandonment Reporting Questioning Manipulating Abandonment/Recovery Collaboration Refocusing Alternating Branching/Backtracking Conjecturing Investigation is a mindset using this skillset. eBay Inc. confidential How well do we investigate them? Too Much Quality Further time and effort is a waste of resources. floating line Good enough quality bar Further time and effort is crucial. Unacceptable Quality eBay Inc. confidential 3
  • 6. Abductive Inference Abductive inference means finding the best explanation for a set of data. 1. Collect data. 2. Find several explanations that account for the data. 3. Find more data that is either consistent or inconsistent with explanations. 4. Choose the best explanation that accounts for the important data, or keep searching. Jump to conjectures, not conclusions eBay Inc. confidential Is Checkout Checking Out? This is a dip in bids we saw in Production. What questions do you have to troubleshoot this? eBay Inc. confidential 8 4
  • 7. Topics for investigation (FORCOSTTTIP) • Feature – Do we know what happens when people bid? • Origin -- When did this start happening? • Recent – Did we just push code to Production? • Consistency / Correlation -- What happened yesterday, tomorrow? Are there other graphs and metrics? • Overlap – Is there any other process happening? • Security – Is it malicious? Intentional? • Terminology -- What kinds of “bids”? US, UK, International? • Third-Party / Silent Partner – What’s not in the room? What sort of information have we NOT heard from? • Truth is out there – does someone already know about this? • Instrumentation – is the graph wrong? Can I get more data? • Prediction – can we test a conjecture with a prediction eBay Inc. confidential 9 Exercise: Psychic Reader eBay Inc. confidential 5
  • 8. Lessons You can be psychic, too You may be clue-less, for now Try “defocusing” Are you just following orders? eBay Inc. confidential Exercise: Mysterious Spheres eBay Inc. confidential 6
  • 9. Lessons If it fails, whose fault is it? Assumptions need nourishment Oracles are in “control” “Elsewhere”, is a useful thought eBay Inc. confidential Exercise: Out-of-Bounds eBay Inc. confidential 7
  • 10. Lessons Be a “model” tester Stagehands work behind curtains Outside data is not inside data Computers are our slaves eBay Inc. confidential Exercise: Art Show What is my Operating Rule? What do you notice? What (crazy) test haven’t you tried? eBay Inc. confidential 8
  • 11. Lessons “You’re so one dimensional” Jump to *conjectures* Yes, I *do* look FAT in this. (M vs. O) Breaking “rules”! eBay Inc. confidential Exercise: Gettysbug Address Does it work? What is the hidden feature? What story does the data tell? eBay Inc. confidential 9
  • 12. Lessons The Rumble Strip heuristic Missing a mission? Be “thoughtless” (random is good) Defocus: do *anything*, *differently* eBay Inc. confidential Exercise: What’s the Pattern? Investigation of behavior is like trying to repro a bug… what is the behavior of this app? eBay Inc. confidential 10
  • 13. Lessons Checking is different than testing Collaboration is a kick Not all characters are created equal Description takes practice eBay Inc. confidential How well do we investigate them? Too Much Quality Further time and effort is a waste of resources. floating line Good enough quality bar Further time and effort is crucial. Unacceptable Quality eBay Inc. confidential 11
  • 14. How much investigation? 1) Sufficient benefits 2) No critical problems 3) The benefits outweigh the problems 4) In the present situation, and all things considered, improvement would be more harmful than helpful The answer must be “Yes” to all four criteria, but ask “for whom, what, and when?” eBay Inc. confidential Intermittent Bugs: Observation Bad observation Irrelevant observation Bad memory Misattribution Misrepresentation Unreliable oracle Unreliable communication Link eBay Inc. confidential 12
  • 15. Intermittent Bugs: System Purposeful change, and then back to original Accidental change Platform change Flaky hardware Trespassing system Executable corruption Component competition eBay Inc. confidential Intermittent Bugs: Machine State Frozen conditional Improper Initialization Resource denial Progressive data corruption Progressive destabilization Overflow Occasional functions Different mode or option setting eBay Inc. confidential 13
  • 16. Intermittent Bugs: Input Accidental Secret boundaries or conditions Different profile Ghost input (alternative source) Simultaneous action as others Compromised input Timing issues Crazy Combinations eBay Inc. confidential Intermittent Bugs: You? You may not be aware of... …variables of influence …sources of distortion in your observations …available tools that might help …boundaries and their characteristics …the system's missing / extra functions …complex / competing algorithms eBay Inc. confidential 14
  • 17. A few (free) investigation tools Httpwatch -- displays log of requests and responses Firebug – inspect HTML -- JavaScript debugger WAVE – accessibility errors eBay Inc. confidential More info • ET Dynamics: http://www.satisfice.com/articles/et-dynamics.pdf • Test Heuristics and Planning http://www.satisfice.com • Context-Driven Software Testing http://groups.yahoo.com/group/software-testing • Center for Software Testing Education and Research http://www.testingeducation.org/BBST • Books related to Exploratory Testing skills and tactics http://www.testingreflections.com/node/view/3190 • Scenario testing examples – http://www.testingeducation.org/a/scenario2.pdf eBay Inc. confidential 15