Foundations
Overview
This first course is a basic introduction to black box testing. It presents basic terminology and considers:
the mission of testing
the oracle problem
the measurement problem
the impossibility of complete testing
More info on the Learning Objectives for Foundations of Software Testing are available on the BBST.info website.
Slides
Videos
Lecture 1: Overview & Basic Definitions
This provides an overview of the online Black Box Software Testing courses and introduces some definitions commonly used in the testing field.
Lecture 2: Strategy
This considers why testers test, what they are trying to learn, and how they can organize their work to achieve their mission.
Lecture 3: Oracles
This presents software oracles as heuristics that help testers make a judgment whether or not software passes the tests that are run.
Lecture 4: Programming Fundamentals & Coverage
This presents information about basic data handling and storage to help testers think about the multi-dimensional problem of test coverage in more sophisticated ways.
Lecture 5: The Impossibility of Complete Testing
This explores the complexity of determining when testing is finished and how the goal of complete testing is unattainable.
Lecture 6: Introduction to Measurement
This addresses the challenges of measurement in software testing.
Readings
Required Readings
Recommended Readings
Austin, Robert. (1996), Measuring and Managing Performance in Organizations (BOOK)
Koen, Billy V. Definition of the Engineering Method, American Society for Engineering Education (ASEE). (A later version that is more thorough but maybe less approachable is Discussion of the Method, Oxford University Press, 2003) (BOOK)
Petzold, Charles. (1993), Code: The Hidden Language of Computer Hardware and Software. Microsoft Press (BOOK)
Popper, Karl (2002, 3rd Ed.) , Conjectures and Refutations: The Growth of Scientific Knowledge (RoutledgeClassics). (BOOK)
Assignments
Study Guide
Last updated