Marick's Test Categories is part of the following frameworks:

What ChaptGPT says about it...

Marick's Test Categories in the context of Test Driven Development

Marick's Test Categories in Test Driven Development

In the context of Test Driven Development (TDD), Marick's Test Categories, introduced by Brian Marick, categorize tests into three main groups based on their purpose and scope.

  1. Characterization Tests: These tests are initially created to understand the current behavior of the system without intending to drive the design forward. They capture the existing behavior of the system in order to prevent regressions in future changes.

  2. Acceptance Tests: These tests specify the desired behavior of the system from the perspective of the user or stakeholder. They are used to verify that the system meets the requirements and behaves as expected.

  3. Unit Tests: These tests are focused on testing the smallest units of code, typically individual functions or methods. They verify the behavior of these units in isolation and are designed to be fast, reliable, and independent of external dependencies.

By categorizing tests in this way, developers can maintain a balanced approach to testing that ensures both the correctness of the system and the clarity of its design.

Resources:

  1. Brian Marick's article on Test Desiderata
  2. Martin Fowler's blog post on Test Desiderata
  3. Test Double - Marick on Characterization Tests

Google Links

Except where otherwise noted, content on stephanhagemann.com is licensed under CC BY 4.0 by Stephan Hagemann