Redefining Boundaries of Boundary Testing James Bach Satisfice, Inc. This material benefited from review and conversation at the 4.

Slides:



Advertisements
Similar presentations
Community of Practice (COP) Content Management Author R.A. Dalton, MKMP, Master Facilitator 1.
Advertisements

Thoughts on Systematic Exploratory Testing of Important Products James Bach, Satisfice, Inc.
Word Problems Problem Solving Strategies –Understand –Plan –Carry Out –Check.
Testing and Quality Assurance
Data Modeling and the Entity-Relationship Model
Black Box Software Testing Copyright © Cem Kaner & James Bach 1 Black Box Software Testing Spring 2005 Part 4 -- QUALITY COST ANALYSIS by Cem Kaner,
Black Box Software Testing Copyright © 2003 Cem Kaner & James Bach 1 Black Box Software Testing Fall 2004 PART PAIRED EXPLORATORY TESTING by Cem.
Fundamentals of Data Analysis Lecture 12 Methods of parametric estimation.
SANFORD “Sandy” MEISNER ( ) and the Meisner Technique.
Welcome to Human Services Delivery Rich Young, MS.
Quantum One: Lecture 3. Implications of Schrödinger's Wave Mechanics for Conservative Systems.
OS Fall’02 Memory Management Operating Systems Fall 2002.
Objectives Understand the basic concepts and definitions relating to testing, like error, fault, failure, test case, test suite, test harness. Understand.
(c) 2007 Mauro Pezzè & Michal Young Ch 10, slide 1 Functional testing.
How do you practice Software Testing? By Michael Kelly.
Black Box Software Testing
Getting the Most out of Your Reading.  The strategies presented in this workshop are all about helping you to gain efficiency with your assigned readings.
Traditional method 2 means, σ’s unknown. Scientists studying the effect of diet on cognitive ability are comparing two groups of mice. The first group.
Verificarea şi Validarea Sistemelor Soft Tem ă Laborator 2 Testare Black Box Dat ă primire laborator: Lab 2 Dat ă predare laborator: Lab 2,3.
Or how to find bugs faster…
Conducting Usability Tests ITSW 1410 Presentation Media Software Instructor: Glenda H. Easter.
Copyright (c) Cem Kaner. All Rights Reserved. 1 Black Box Software Testing (Academic Course – Fall 2001) Cem Kaner, J.D., Ph.D. Professor of.
Software testing techniques Software testing techniques Testing based on specifications Presentation on the seminar Kaunas University of Technology.
1 Object-Oriented Testing CIS 375 Bruce R. Maxim UM-Dearborn.
University of Palestine software engineering department Testing of Software Systems Fundamentals of testing instructor: Tasneem Darwish.
Objectives Understand the basic concepts and definitions relating to testing, like error, fault, failure, test case, test suite, test harness. Explore.
Ensuring the quality of Qualitative Data Presented by Lorie Broomhall, Ph.D. Senior HIV/AIDS Advisor Nigeria Monitoring and Evaluation Management Services.
Overview of Software Testing 07/12/2013 WISTPC 2013 Peter Clarke.
Qualitative Data Presented by: Carol Askin Instructional Media/Data Analysis Advisor Local District 6.
What do we know about exploratory testing? Implications for Practice
Chapter 6 Use Case –The interaction between an actor and the system.
Inside The Tester’s Mind Jon Bach Manager for Corporate Intellect Quardev Laboratories, Seattle August 4, 2006 Describing exploratory.
Black Box Software Testing Copyright © Cem Kaner & James Bach 1 Black Box Software Testing Fall 2005 Overview—Part 2 (Mission of Testing) Cem Kaner,
Copyright (c) Cem Kaner. 1 Software Testing 1 CSE 3411 SWE 5411 Assignment #1 Replicate and Edit Bugs.
Black Box Software Testing Copyright © 2003 Cem Kaner & James Bach 1 Black Box Software Testing Spring 2005 PART 7 -- FUNCTION TESTING by Cem Kaner, J.D.,
Introduction to Software Testing. Types of Software Testing Unit Testing Strategies – Equivalence Class Testing – Boundary Value Testing – Output Testing.
Black Box Testing Techniques Chapter 7. Black Box Testing Techniques Prepared by: Kris C. Calpotura, CoE, MSME, MIT  Introduction Introduction  Equivalence.
Test Drivers and Stubs More Unit Testing Test Drivers and Stubs CEN 5076 Class 11 – 11/14.
Well-behaved objects Main concepts to be covered Testing Debugging Test automation Writing for maintainability Objects First with Java - A Practical.
Black Box Software Testing Copyright © Cem Kaner & James Bach 1 Black Box Software Testing Fall 2005 Overview—Part 3 (Test oracles) Cem Kaner,
@FriendlyTester#Testbash Automation in Me!
Black Box Software Testing Copyright © 2003 Cem Kaner & James Bach 1 Black Box Software Testing 2004 Academic Edition Part EDITING BUGS by Cem Kaner,
Session # Rational User Conference 2002 Author Note: To edit Session # go to: View/Master/Title Master ©1998, 1999, 2000, 2001, 2002 Rational Software.
The Case Against Test Cases
Chapter 1: Fundamental of Testing Systems Testing & Evaluation (MNN1063)
Test Case Designing UNIT - 2. Topics Test Requirement Analysis (example) Test Case Designing (sample discussion) Test Data Preparation (example) Test.
Smart Home Technologies
Jon R. Cavallo, PE, PCS, CIP Level 3 Senior Consultant Enercon Services, Inc. October 6, 2009NACE Eastern Area Conference1.
Objects First With Java A Practical Introduction Using BlueJ Well-behaved objects 2.1.
World Conference – Next Generation Testing 08 – 12 July, Le-Meridien, Bangalore Mindmaps and Exploratory Testing Ajay Balamurgadas Meeta Prakash
1. Black Box Testing  Black box testing is also called functional testing  Black box testing ignores the internal mechanism of a system or component.
The Microlevel Perspective
Data Mining By Farzana Forhad CS 157B. Agenda Decision Tree and ID3 Rough Set Theory Clustering.
IS4500 – SOFTWARE QUALITY ASSURANCE TESTING STRATEGIES Copyright © 2012 by Martin Schedlbauer, Ph.D. All Rights Reserved. Do Not Duplicate or Distribute.
CSCI 383 Object-Oriented Programming & Design Lecture 7 Martin van Bommel.
TESTING BASED ON ERROR GUESSING NERINGA SIPAVIČIEN Ė IFM-2/4 It is not actually guessing. Good testers do not guess…
Design Evaluation Overview Introduction Model for Interface Design Evaluation Types of Evaluation –Conceptual Design –Usability –Learning Outcome.
Class Observer & Feedback Training Cass Breen & Marco Macchitella.
Dynamic Black-Box Testing Part 1 What is dynamic black-box testing? How to reduce the number of test cases using: Equivalence partitioning Boundary value.
PREPARED BY G.VIJAYA KUMAR ASST.PROFESSOR
Testing Tutorial 7.
Data Mining Jim King.
Data Structures Interview / VIVA Questions and Answers
Testing Boolean Expressions
Quantum One.
Black Box Software Testing Fall 2004
Rapid Software Testing
Black Box Software Testing Fall 2005 Overview—Part 3 (Test oracles) Cem Kaner, J.D., Ph.D. Professor of Software Engineering Florida Institute of Technology.
Chapter 7 Software Testing.
Exploring Exploratory Testing
Presentation transcript:

Redefining Boundaries of Boundary Testing James Bach Satisfice, Inc. This material benefited from review and conversation at the 4 th Workshop on Heuristic and Exploratory Techniques. The following people contributed to that conference: Jon Bach, James Bach, Robert Sabourin, Karen Johnson, Cem Kaner, Henrik Andersson, Keith Stobie, Scott Barber, David Gilbert, Doug Hoffman, Mike Kelly, Harry Robinson, Ross Collard, Dawn Haynes, Timothy Coulter, and Michael Bolton

4.3.2 Boundary value analysis (K3) “Behavior at the edge of each equivalence partition is more likely to be incorrect, so boundaries are an area where testing is likely to yield defects. The maximum and minimum values of a partition are its boundary values. When designing test cases, a value on each boundary is chosen.” ISTQB Foundation Syllabus

Scenario: Dear Tester, I just added a document description field to the metadata (“File | Properties”). It should take up to bytes of text, and truncate anything more than that. Thanks!

32K?  Ambiguity in units and limits

(64K) 32K  Ambiguity in units and limits  Foreign boundaries (upstream)  Unknown boundaries ? 64K 32K  Ambiguity in units and limits

32K  Ambiguity in units and limits  Foreign boundaries (upstream)  Dynamic boundaries  Unknown boundaries ? (64K+  ) 64K+  32K

(64K+  ) 32K(16K) 32K  Ambiguity in units and limits  Foreign boundaries (upstream/downstream)  Dynamic boundaries  Unknown boundaries 16K ? 64K+ 

32K (64K+  ) (16K) K16K  Ambiguity in units and limits  Foreign boundaries (upstream/downstream)  Dynamic boundaries  Quasi-functional boundaries  Unknown boundaries  Undeclared boundaries 255 ? 64K+ 

32K (64K+  ) (16K) K16K 255  Ambiguity in units and limits  Foreign boundaries (upstream/downstream)  Dynamic boundaries  Quasi-functional boundaries  Unknown boundaries  Undeclared boundaries  Mis-declared boundaries (2K) ? 64K+  2K

The Boundary Risk Hypothesis: All other things being equal, any given thing is more likely to be misclassified, mishandled, or misdirected when “near” a suspected boundary than when “far away.” This hypothesis arises because we are aware of specific mechanisms of boundary-related failure, over and above other mechanisms. But the actual boundaries in a product may not be the ones we are told about. That’s why we must explore.

Toward a Better Definition of Boundary Testing  Boundary testing: Any testing to the extent that it involves the discovery or evaluation of boundaries or boundary-related behavior.  Boundary: 1. A dividing point between two otherwise contiguous regions of behavior; or 2. A principle or mechanism by which things are classified into different sets.

To Test Boundaries Well Focus and De-focus  De-focusing strategy for boundary testing  Don’t “believe” what you read about specific boundaries, nor what you are told.  Study product behavior while driving inputs/outputs toward infinity and zero. (Stopping heuristics: flat line, sufficient drama, or cost exceeds value.)  Look for subtle clues: performance degradation; obscure data corruption; garbage.  You never know that a boundary test is finished. The failure may not become manifest right away, and not necessarily in the function you are testing at that moment. Explore around.  Focusing strategy for boundary testing  Study product claims about boundaries.  Interview programmers about boundaries.  Don’t just test on the boundary, test in “epsilons” off the boundary.  Envision data moving through a multi-path maze of “boundary gates” in the product. Are those gates consistent with each other, and with the purposes of the product?  Push boundaries while considering all known routes data may take in their lifecycle.  Pay special attention to interactions between sub-systems written by different people.  Perform bisection search to home in on specific boundaries.