Skip to main content

The Art of CTO Technology Tree is an interactive AoE-style progression map that visualises maturity across engineering domains — from ad-hoc practices to elite capability — with actionable steps, effort estimates, and cross-domain dependencies.

Tech Tree · Engineering

Testing & QA Maturity

Advance your testing practice from manual verification to AI-assisted predictive quality engineering. Each node represents a concrete capability with realistic effort estimates and cross-discipline dependencies.

Maturity tiers
  1. Manual

    Testing is performed by humans on an ad-hoc or scheduled basis. Slow feedback, high defect escape rate.

  2. Automated

    Core test suites run automatically on each commit. Feedback arrives in minutes, not days.

  3. Continuous

    Testing is fully integrated into the delivery pipeline. Quality gates block bad code from reaching production.

  4. Predictive

    Advanced techniques (mutation testing, chaos, AI) predict defects before they occur and optimise the test suite continuously.

Tracks

  • Unit

    Tests that verify individual functions, classes, or modules in isolation.

  • Integration

    Tests that verify interactions between services, databases, and external APIs.

  • E2E

    Tests that simulate real user journeys through the full application stack.

  • Performance

    Tests that measure throughput, latency, and resilience under realistic and extreme load.

All capabilities (17)

Manual

  • API Manual Testing

    Engineers use tools like Postman or Insomnia to manually verify API contracts, edge cases, and error responses before shipping new endpoints.

    api-testing · postman · integration

  • Exploratory Testing

    QA engineers perform structured exploratory sessions on new features, documenting findings and edge cases. Session notes feed into the regression suite.

    exploratory-testing · qa · ux

  • Performance Baseline

    Response times and throughput are measured for key endpoints, establishing a baseline that can detect regressions before users complain.

    performance · baseline · latency

  • Written Test Cases

    Critical application flows are documented as step-by-step test cases with expected outcomes. Testers execute them before each release to verify no regressions.

    manual-testing · test-cases · qa

Automated

  • API Contract Tests

    Provider-driven contract tests (Pact, OpenAPI schema validation) verify that API changes do not break consumers, enabling independent service deployments.

    contract-testing · pact · openapi · integration

  • Automated Load Testing

    Load tests written in k6 or Locust run against staging on a schedule, verifying that the system meets throughput and latency targets before production releases.

    load-testing · k6 · locust · performance

  • Browser Automation

    Critical user journeys are automated with Playwright or Cypress, running against staging environments to catch UI regressions before production deployments.

    e2e · playwright · cypress · automation

  • Mocking & Stubs

    External dependencies (databases, third-party APIs, message queues) are replaced with fakes or mocks in unit and integration tests, enabling fast, deterministic test runs.

    mocking · unit-testing · test-doubles

  • Unit Test Framework

    A test framework (Jest, pytest, JUnit, Go test) is adopted across all services. Engineers write unit tests for all new functions and critical existing code.

    unit-testing · jest · pytest · coverage

Continuous

  • Coverage Gates in CI

    CI pipelines enforce minimum coverage thresholds per service. Pull requests that reduce coverage below the threshold are blocked until tests are added.

    coverage · ci · quality-gates

  • Ephemeral Integration Environments

    Each PR gets an isolated environment with all dependent services spun up automatically, enabling integration tests to run against real dependencies without environment conflicts.

    ephemeral-environments · integration · ci · docker

  • Stress & Spike Testing

    The system is tested at 2-5x expected peak load and with sudden traffic spikes to expose resource exhaustion, connection pool limits, and cascading failures before they hit production.

    stress-testing · spike-testing · performance · resilience

  • Visual Regression Testing

    Screenshot comparison tools (Percy, Chromatic, Playwright snapshots) detect unintended UI changes across components and full pages on every PR.

    visual-regression · percy · chromatic · ui

Predictive

  • AI-assisted Test Generation

    AI tools (GitHub Copilot, Diffblue, Codium) analyse code changes and suggest missing test cases, while ML models trained on past defects prioritise which tests to run first.

    ai-testing · test-generation · ml · developer-productivity

  • Automated Schema Evolution

    Schema registries (Confluent Schema Registry, Buf) enforce backward-compatible API and event schema evolution, automatically blocking breaking changes before they are merged.

    schema-evolution · contract-testing · api-governance

  • Chaos Engineering

    Controlled experiments (Chaos Monkey, LitmusChaos, Gremlin) inject faults — network latency, pod kills, disk failures — into staging and production to find weaknesses proactively.

    chaos-engineering · resilience · litmus · gremlin

  • Mutation Testing

    Mutation testing tools (Stryker, PITest) inject deliberate code faults and verify that the test suite catches them, exposing tests that pass without actually verifying behaviour.

    mutation-testing · stryker · test-quality · predictive

Interactive view

Other tech trees

Frequently Asked Questions

What is a technology tree?

A technology tree (tech tree) is a visual progression map inspired by strategy games like Age of Empires. It shows capabilities organised by domain (columns) and maturity level (rows), with dependency lines showing what must be achieved before advancing. Each node includes effort estimates, actionable steps, and links to relevant tools.

How do I use the tech tree for my organisation?

Select an organisational tree (like Engineering Org Maturity or Security & Compliance), then mark nodes as completed based on your current state. The tree automatically highlights what is available to work on next based on prerequisites. Click any available node to see the concrete steps required to achieve it.