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.
This provides an overview of the online Black Box Software Testing courses and introduces some definitions commonly used in the testing field.
​Lecture 1A​
​Lecture 1B​
​Lecture 1C​
This considers why testers test, what they are trying to learn, and how they can organize their work to achieve their mission.
​Lecture 2A​
​Lecture 2B​
This presents software oracles as heuristics that help testers make a judgment whether or not software passes the tests that are run.
​Lecture 3A​
​Lecture 3B​
​Lecture 3C​
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 4A​
​Lecture 4B​
​Lecture 4C​
​Lecture 4D​
This explores the complexity of determining when testing is finished and how the goal of complete testing is unattainable.
​Lecture 5A​
​Lecture 5B​
​Lecture 5C​
This addresses the challenges of measurement in software testing.
​Lecture 6A​
​Lecture 6B​
​Lecture 6C​
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)
​Foundations Study Guide​