Skip to content

Tests: no integration or end-to-end tests covering full health check execution pipeline #51

@tkadauke

Description

@tkadauke

Description

The test suite (spec/) consists exclusively of unit tests (controllers, helpers, steps in isolation) and model specs. There are no integration tests that exercise the full pipeline:

  1. Create a site and health check with steps
  2. Trigger a check run
  3. Verify screenshots, logs, and status are recorded correctly
  4. Verify notifications are sent

Without end-to-end tests, regressions that involve multiple components interacting (e.g., a step type change breaking the runner, a mailer template error silently swallowing notifications) go undetected.

Suggested approach

Add spec/integration/ or spec/system/ directory with feature specs using RSpec + Capybara (or at minimum, request specs):

# spec/integration/health_check_execution_spec.rb
RSpec.describe 'Health check execution' do
  it 'runs a visit+check_content check and records success' do
    # setup site, health_check, steps
    # trigger check!
    # assert check_run.status == 'success'
  end
end

Effort: large

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions