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

Assignments

Study Guide