Halloween DealsAmazon USHalloween week deals: useful picks before month-endAmazon US: current deals, useful picks and tech finds.Check DealsPC HealthRecommendedCrashes, freezes, slowdowns? Check your PC nowSpot repairable issues before they interrupt work.Check PCHalloween DealsAmazon USOctober picks are moving - compare before checkoutAmazon US: current deals, useful picks and tech finds.See Picks×
FREEDOM251

Freedom251 › Blog › automated testing

How to Monitor Automated Tests in CI: Results, Flakiness, and Alerts

By Freedom251 Team · · 6 min read

Free tools Windows power users keep installed

One-click scans. No signup required.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Monitor automated tests at two levels: the overall CI run and each individual test. Keep test history, execution time, failure output, and useful artifacts; alert the person who can investigate; and track intermittent failures instead of letting retries or quarantines make them disappear. Run fast, relevant checks on each change, then add slower suites at later pipeline stages or on a schedule.

Choose when each test suite runs

Run the smallest useful set of fast tests on every relevant change. Add integration and regression tests in later stages, then schedule full-suite or longer load and performance checks where running them on every commit would make feedback too slow. The right cadence depends on risk, run time, dependencies, and how the team releases.

As an Amazon Associate I earn from qualifying purchases.

HM Revenue & Customs’ engineering standard says automated tests should run often enough to detect regressions and ideally on every change. It also cautions that an oversized test pack can slow feedback until people stop running it or ignore the results. HMRC’s test automation standard was last updated March 21, 2025.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Save evidence for every run

A green or red pipeline summary cannot tell you which test failed, whether the same failure has appeared before, or whether a test is getting slower. Retain machine-readable test reports and make failed-test output available from the CI run. Where useful, retain logs and UI-test screenshots or video too.

Include enough context to reproduce and classify a failure: the commit and branch, environment, test identifier, error message, stack trace, and relevant artifacts. This helps distinguish a code regression from a configuration, infrastructure, or test-code problem. Microsoft recommends recording the failing test or environment, reproduction steps, and supporting logs or images in its testing practices guidance. CircleCI documents storing test results and accessing failed-test output in its automated testing documentation.

Track signals that lead to action

Start with a small set of measures that help explain whether tests are trustworthy and whether feedback is getting slower:

  • Outcomes: pass or fail for the overall run and for each test.
  • Duration: time by test and pipeline stage, so slowdowns can be located.
  • Failure patterns: trends over time and clusters of repeated failures.
  • Flakiness: tests with intermittent failures or persistently low success rates.
  • Risk-area coverage: use coverage to find important untested paths, not as a score to maximize.
  • Follow-up: severity, owner, and age when a failure becomes a tracked defect.

Microsoft recommends watching results, execution time, failure trends, and historical comparisons. CircleCI’s test insights surface flaky, low-success-rate, and slow tests. Avoid treating a pass rate or coverage percentage as a goal by itself: a stable but irrelevant suite can appear healthy, and coverage does not prove that assertions exercise important behavior. Use trends and product risk to decide what to investigate.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Make failure notifications useful

Route failures to the team or owner responsible for the affected code. A useful alert identifies the test, commit or build, environment, error and stack trace, relevant artifacts, and a direct link to the run. Notify people who can investigate, rather than broadcasting context-free red status messages.

Consider alerting on repeated or high-impact patterns to limit noise, but keep individual failure records. Microsoft advises notifying people who can investigate promptly; Postman Monitors can notify users about monitor failures and errors.

Investigate flaky tests instead of normalizing them

A flaky test passes and fails intermittently without an intended code change. That inconsistency weakens confidence in the signal: developers may dismiss a real regression as noise. When the same code produces different outcomes, investigate likely sources such as:

  • State left behind by earlier tests or shared data that is not reset.
  • Assumptions about test order, or interference between parallel tests.
  • Timing-sensitive assertions, race conditions, or thread-safety problems.
  • Unstable infrastructure or external dependencies.

The pytest documentation on flaky tests discusses these failure mechanisms. Fix the underlying cause where possible. If a test must be quarantined temporarily, keep it visible, assign an owner, and set a review or expiry point. The pytest guidance warns that permanent xfail or quarantine can let build-breaking changes through; HMRC’s standard likewise says teams should investigate and mitigate flakiness.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Use retries as evidence, not a cure

A retry can help identify an intermittent failure, but a later passing attempt may turn a job green and conceal the first failure. Preserve first-attempt outcomes and retry counts when your platform permits it, and watch for patterns rather than treating a successful retry as proof that the test is healthy. CircleCI describes auto-reruns as useful for intermittent failures; consistent failures still exhaust retries and fail the job, while a later pass can suppress the earlier failure in the job result. See its test data documentation.

Use the monitoring capabilities you already have

Begin with your test framework and CI platform if they already retain per-test results, duration, history, artifacts, and notifications. Add a dedicated service when you need capabilities your current workflow lacks, such as longer-term history, aggregation across projects, flaky-test triage, or scheduled API checks. This is a practical starting point, not a claim that one vendor fits every team.

When comparing options, check report-format and framework compatibility, individual test history, flaky-test detection, artifact retention, runtime and parallel-run visibility, alert routing, setup effort, and plan limits. For API checks, also consider schedule frequency, execution region, private-network access, and authentication requirements.

CI-native results: CircleCI

CircleCI documents test-result storage, failed output, run timing, and insights into flaky, low-success, and slow tests. Some advanced test features have platform or authentication conditions, so check the current documentation for the specific capability you need: Automated testing in CircleCI.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Scheduled API checks: Postman Monitors

Postman Monitors are suited to API health checks and validation of critical workflows. The documentation describes scheduled or CLI-triggered runs, notifications, run history, and region or runner choices. It also lists current limitations: OAuth 2.0 monitor limitations, beta status for GraphQL and gRPC request support, and plan limits for minute schedules and multiple regions. Verify the current terms and availability for your account before selecting a plan: Set up a monitor in Postman.

Operational triage: GitLab’s example

GitLab’s flaky-test handbook describes an internal process that analyzes failure data, identifies high-impact flaky files, creates issues, and routes them to owners. It is an example of turning test signals into assigned work, not a universal threshold or response-time target.

Independent reader supportYour contribution helps us test, update, and keep practical guides available for everyone.Support on Ko-Fi

Or skip the browser setup

For UI tests where a screenshot helps explain a failure, you can capture a page yourself in a browser-based test and attach the image to the CI run. Or use ScreenshotNeo, a website screenshot API and MCP server for developers, to capture a page with one GET request. The response can be a PNG, JPEG, WebP, or PDF.

ScreenshotNeo accepts cookie or consent banners like a visitor and removes more than 60 known consent platforms, newsletter popups, and chat widgets before capture; each of those steps can be turned off. Bot checks or CAPTCHAs, blank pages, timeouts, failed loads, and cache hits cost nothing, and response headers identify the page verdict and whether the request was billed. AI agents can use its MCP server tools: take_screenshot, get_page_info, and capture_pdf.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Example cURL request (replace the target URL with the page your test needs):

curl -G "https://api.screenshotneo.com/v1/shot" -d access_key=YOUR_API_KEY --data-urlencode url=https://stripe.com -o shot.webp

See the ScreenshotNeo API documentation for request options. The free plan includes 1,000 screenshots per month with no card; paid plans start at $5 for 3,000. Sign up for ScreenshotNeo’s free plan.

Troubleshoot common monitoring failures

  • The pipeline is green, but a test failed on an earlier attempt: Check retry behavior and surface first-attempt results and retry counts instead of relying only on the final status.
  • Failures cannot be reproduced: Confirm that reports include the commit, environment, test name, error, and stack trace; retain logs and relevant UI artifacts.
  • Failures cluster only in parallel runs: Investigate shared data, ordering assumptions, state leakage, and concurrency or thread-safety issues.
  • Test feedback is so slow that developers skip it: Move longer checks to later stages or scheduled runs, while keeping fast, risk-relevant tests on each change.
  • Alerts generate noise without action: Route them to an owner and include the run link and diagnostic context; reserve higher-priority notifications for repeated or high-impact failures.
  • Coverage rises but regressions still escape: Review whether tests exercise important behavior and risky paths; do not use coverage alone as evidence of test quality.

Frequently Asked Questions

Should every automated test run on every commit?

No. Run the fast, relevant checks on each change, then place slower integration, full-suite, load, or performance checks in later stages or scheduled runs according to risk and feedback time.

What is the most important metric for test monitoring?

No single number is sufficient. Per-test outcomes, run history, duration, failure trends, and flakiness together provide a more useful picture than an aggregate pass rate.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Do retries fix flaky tests?

No. They may reduce disruption, but can conceal an initial failure when a retry passes. Preserve the first outcome and investigate recurring intermittent failures.

Product prices and availability are accurate as of the date/time indicated and are subject to change. Any price and availability information displayed on Amazon at the time of purchase will apply.

automated testingCI/CDflaky testssoftware testingtest monitoring

Leave a Reply

Your email address will not be published. Required fields are marked *

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Recommended PC Tool
Recommended PC Tool
Windows Errors? Fix Them Before They SpreadFree repair scan
Outdated Drivers Are Slowing You DownFree scan - exact matches

Two free Windows tools

One Free Minute Could Fix That PC

Before you go - each of these free tools takes about a minute and tackles what quietly slows a Windows PC down.

Special offer. View Outbyte info, uninstall instructions, EULA, and Privacy Policy.