Continuous Testing Foundation study materials
Continuous Testing Foundation study resources

Continuous Testing Foundation: DevOps Test Automation Best Practices

Continuous Testing Foundation · Work through your exam, one topic at a time.

All guide sections

DevOps Test Automation Best Practices

This domain tests how to build automation that stays fast, trustworthy and maintainable inside a pipeline, and how to avoid the failure modes that make teams abandon automated suites.

Core rules and concepts

  • Automate by risk and level: use the test pyramid; prefer fast, isolated unit and API tests; reserve UI automation for critical journeys.
  • Treat test code as product code: version control, code review, naming standards, refactoring and design patterns such as page objects or screenplay.
  • Independence and determinism: tests must not depend on execution order, shared state or the clock; each test sets up and cleans its own data.
  • No flaky tests in the gate: quarantine flaky tests, fix root causes, and track stability. Flakiness destroys trust in feedback.
  • Fast feedback: parallelise, run headless where appropriate, use selective test execution, and keep suites within stage time budgets.
  • Good assertions: assert meaningful outcomes, not just that a page loaded; avoid assertion-free scripts.
  • Visible reporting: results must flow to dashboards and link to requirements and defects.
  • API-first automation for service-level behaviour; service virtualization for unavailable dependencies.

Worked example

A regression suite fails intermittently on a date-dependent test. The team quarantines it so the pipeline stays trustworthy, reproduces the failure, replaces the hard-coded date with a controlled clock, adds a deterministic data fixture, and monitors the test's stability for two weeks before restoring it. Reasoning: the priority is trustworthy feedback. Leaving a flaky test in the gate trains people to ignore red builds; deleting it removes coverage. Quarantine plus root-cause fix preserves both signal and coverage.

Traps that cost marks

  • Measuring automation success by test count rather than risk coverage and stability.
  • Automating everything, including one-off or highly exploratory checks.
  • Building a large UI-only suite because it looks like end-to-end coverage.
  • Shared test data and order-dependent tests that pass locally and fail in the pipeline.
  • Ignoring test maintenance; brittle selectors and duplicated code erode the suite.
  • Weak assertions that pass when the feature is broken.