(Updated: )

The Advent of Monitoring, Day 11: Testing and Monitoring: Should You Separate or Unite Them?

Share on social

The two key pillars of building reliable applications are: testing and monitoring.

With testing, you can verify that each pull request works before it’s merged and deployed to production. Just testing isn’t enough, though. You also need to make sure that the application continues to work on production.

Database rollovers, third-party outages, and unexpected spikes in traffic can all cause issues that need to be detected. As explained on the 1st day of Xmas, synthetic monitoring is a great tool to make sure your application stays up and running.

Why keep testing and monitoring separate, though?

With the Checkly CLI, you can reuse your synthetic monitoring checks as an extra layer of tests. By adding an npx checkly test to your CI pipeline, you can run your checks against your staging environment as tests. Leveraging your existing checks like this gives you an extra layer of protection on top of your unit and integration tests.

Not only does this approach help you catch issues in your application before they reach production, it also allows you to catch issues in your checks. When you make changes to your application, for example adding an extra form to your sign-up flow, your checks may need to be updated as well.

Running checks in your CI catches this before the PR is merged, letting you avoid any alerts surprising your on-call engineers! With the Checkly CLI, you can even update your checks and your application in the same PR.

To start uniting your testing and monitoring setup, check out our docs!

Share on social