This project is not covered by Drupal’s security advisory policy.
Smoke Test provides a fast, automated way to verify that your site is working immediately after a deployment. Instead of requiring a hand-written list of URLs, it reads your sitemap.xml and samples pages across all content types automatically.
Each URL is tested over real HTTP—both anonymously and as a logged-in user. It uses cache-bypassing headers so a warm CDN or reverse-proxy cache cannot mask a broken backend behind a false "200 OK". Results are stored, compared against the previous run, and displayed in a simple dashboard to flag regressions instantly.
Features
- Sitemap-Driven Discovery: No manual list maintenance. Automatically maps sitemap URLs back to Drupal content types.
- Smart Sampling: Stratified, deterministic sampling ensures rare content types are tested alongside high-volume ones.
- Dual-State Checks: Tests pages both anonymously and authenticated via a dedicated, secure, low-privilege runner account.
- Cache Bypassing: Sends cache-busting headers to force live application checks (includes Varnish VCL examples).
- Regression Tracking: Diffs every run against the last to isolate "new failures" from "known issues", complete with a side-by-side comparison view.
- UI & CLI Support: Trigger manually with an interactive Batch API progress bar at
/admin/smoke-test, or viadrush smoke:run(with JSON output) in CI/CD pipelines.
Post-Installation
Enabling the module automatically creates a read-only runner role and passwordless user account.
- Configure: Go to
/admin/smoke-test/settingsto set timeouts, limits (max 200 URLs), and content types. - Execute: Run tests via the UI at
/admin/smoke-testor usedrush smoke:run. - Review: Inspect per-URL results, compare historical runs, and mute known issues.
Note: This module does not alter content types or site structure. It only adds admin routes, two history tables, and the runner user/role.
Additional Requirements
- Drupal 10 or 11
- PHP 8.3+
- Drush 12+ (for CLI/CI use)
- Core dependencies only (
System,User,Node,Path Alias)
Recommended modules/libraries
- Sitemap Module: Requires an active sitemap provider (e.g., Simple XML Sitemap) for URL discovery.
- Edge Cache Configuration: Add the recommended VCL snippet to your CDN/Varnish setup to allow the cache-bypass header through.
Similar projects
- External Synthetic Monitoring (Pingdom, UptimeRobot): These check fixed, manually configured lists. Smoke Test discovers content dynamically and hooks right into Drush deployment workflows.
- Monitoring Module: Focuses on operational metrics (cron, queues) rather than testing live page rendering post-deploy.
Community Documentation
Check the included README.md for deep-dive configuration, CI/CD pipeline snippets, and Drush usage examples.
Project information
- caution Minimally maintained
Maintainers monitor issues, but fast responses are not guaranteed. - caution Maintenance fixes only
Considered feature-complete by its maintainers. - Project categories: Administration tools, Automation, Developer tools
- Created by georgebrook on , updated
- shield alertThis project is not covered by the security advisory policy.
Use at your own risk! It may have publicly disclosed vulnerabilities.