Using Antithesis
Antithesis is designed to supplement or replace your existing testing tools and live alongside your normal CI workflow.
To test with Antithesis, you package your software using containers and deploy it to the Antithesis Environment, an entirely self-contained environment (like a small private cloud) in which we run our tests. Any component of your software that can be containerized – whether a single subsystem or the whole shebang – can be tested with Antithesis.
While the process of deploying code to test can be integrated with your production CICD pipeline (and is, at some of our customers), you’re never giving Antithesis access to production data or any production environment. Nonetheless, we take security extremely seriously. You can read about our security posture here.
You’ll also need to write and package a Workload, which is conceptually similar to a test harness, but isn’t exactly the same. We provide tools and guidance to ensure your Workloads are maximally effective, which you can read about here.
Once you’ve deployed your software and a Workload to the Antithesis Environment, you’re ready to kick off a test.
Every time you run a test, Antithesis generates a triage report, with information about the high-level properties of your software and basic debugging information for suspected violations of those properties. As its name suggests, the triage report helps you decide whether to conduct a deeper investigation.
If you need to dive deeper into a specific issue, Antithesis can generate a bug report. From the bug reports, users can jump right into debugging, using the Antithesis Notebook to navigate and explore each bug.
Antithesis lets you define how long to test in a given run, and on how many machines. These two factors are reasonable predictors of both test thoroughness and testing cost.
There isn’t a single “right” way or time to use Antithesis. Our most successful customers use Antithesis as part of their standard integration testing, letting us test relatively small changes to their code. Others run Antithesis against their nightly build, allowing the test to run for several hours. Yet others treat Antithesis as their last line of defense against hard-to-find bugs.
We’re confident that however you integrate Antithesis into your CICD workflow, it will empower your team to move faster and develop boldly, knowing that issues will be found and fixed before they actually become problems.