TDDCycle

A single red-green-refactor iteration in the test-driven development cycle, tracking the failing test, implementation, and refactoring steps.

AgileBest PracticesContinuous IntegrationExtreme ProgrammingMethodologySoftware DevelopmentTesting

Properties

Name Type Description
id string Unique identifier for the TDD cycle.
phase string Current phase of the TDD red-green-refactor cycle.
test_name string Name of the test written in the red phase.
test_description string Description of what behavior the test specifies.
test_code string The test code written to define the expected behavior.
implementation_code string The minimal implementation code written to make the test pass in the green phase.
refactored_code string The improved code produced in the refactor phase while keeping tests passing.
test_status string Whether the test is currently failing or passing.
language string Programming language used (e.g., JavaScript, Python, Java, Ruby).
framework string Testing framework used (e.g., Jest, pytest, JUnit, RSpec).
commit_hash string Git commit hash associated with this TDD cycle step.
created_at string ISO 8601 timestamp when this TDD cycle was recorded.
View JSON Schema on GitHub

JSON Schema

test-driven-development-cycle-schema.json Raw ↑
{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://raw.githubusercontent.com/api-evangelist/test-driven-development/refs/heads/main/json-schema/test-driven-development-cycle-schema.json",
  "title": "TDDCycle",
  "description": "A single red-green-refactor iteration in the test-driven development cycle, tracking the failing test, implementation, and refactoring steps.",
  "type": "object",
  "properties": {
    "id": {
      "type": "string",
      "description": "Unique identifier for the TDD cycle."
    },
    "phase": {
      "type": "string",
      "enum": ["red", "green", "refactor"],
      "description": "Current phase of the TDD red-green-refactor cycle."
    },
    "test_name": {
      "type": "string",
      "description": "Name of the test written in the red phase."
    },
    "test_description": {
      "type": "string",
      "description": "Description of what behavior the test specifies."
    },
    "test_code": {
      "type": "string",
      "description": "The test code written to define the expected behavior."
    },
    "implementation_code": {
      "type": "string",
      "description": "The minimal implementation code written to make the test pass in the green phase."
    },
    "refactored_code": {
      "type": "string",
      "description": "The improved code produced in the refactor phase while keeping tests passing."
    },
    "test_status": {
      "type": "string",
      "enum": ["failing", "passing"],
      "description": "Whether the test is currently failing or passing."
    },
    "language": {
      "type": "string",
      "description": "Programming language used (e.g., JavaScript, Python, Java, Ruby)."
    },
    "framework": {
      "type": "string",
      "description": "Testing framework used (e.g., Jest, pytest, JUnit, RSpec)."
    },
    "commit_hash": {
      "type": "string",
      "description": "Git commit hash associated with this TDD cycle step."
    },
    "created_at": {
      "type": "string",
      "format": "date-time",
      "description": "ISO 8601 timestamp when this TDD cycle was recorded."
    }
  },
  "required": ["id", "phase", "test_name", "test_status"]
}