Statistical debug information

The Statistical Debug Information section of the bug report estimates how strongly associated each area of the code is with the bug. Recall that Antithesis starts with a sample of instances of a bug and then generates a universe of many thousands of test cases by varying conditions a little bit. For every one of these new cases where the bug is hit, Antithesis records which lines of code in your software ran at some point. For every case where the bug is not hit, Antithesis records the same information. This is useful for generating hypotheses about where the bug is in your code: you can look at the lines of code that were most highly correlated with the bug occurring. Conversely, this is also useful for ruling out culprits: you might think that the bug is in one section of code, but Antithesis might find a test case where the bug is detected but that section of code is never called. The bug must therefore be somewhere else.

This section answers two related questions:

  • Given that the bug is detected, what is the likelihood that a particular line of code is encountered?
  • Given that a line of code is executed, what is the likelihood that the bug eventually surfaces?

The table in this section displays every line of code that ran in any of the test cases, and allows you to sort by these two distinct conditional probabilities.

Statistical

The table also allows filtering by file, function, or class name in case you are only interested in seeing the statistical information for particular parts of your system.

It is normal that code associated with printing the error message or with the process of crashing will have a very high association with the bug. You may need to scroll down a little bit in the table to get past these trivial associations.

  • Introduction
  • How Antithesis works
  • Get started
  • Test an example system
  • With Docker Compose
  • Build and run an etcd cluster
  • Meet the Test Composer
  • With Kubernetes
  • Build and run an etcd cluster
  • Meet the Test Composer
  • Setup guide
  • For Docker Compose users
  • For Kubernetes users
  • Product
  • Test Composer
  • Test Composer basics
  • Test Composer reference
  • How to check test templates locally
  • How to port tests to Antithesis
  • Reports
  • The triage report
  • Findings
  • Environment
  • Utilization
  • Properties
  • The bug report
  • Context, Instance, & Logs
  • Bug likelihood over time
  • Statistical debug information
  • Search dashboard & multiverse map
  • Multiverse debugging
  • Overview
  • The Antithesis multiverse
  • Querying with event sets
  • Environment utilities
  • Using the Antithesis Notebook
  • Cookbook
  • Tooling integrations
  • CI integration
  • Discord and Slack integrations
  • Issue tracker integration - BETA
  • Configuration
  • Access and authentication
  • The Antithesis environment
  • Optimizing for Antithesis
  • Docker best practices
  • Kubernetes best practices
  • Concepts
  • Properties and Assertions
  • Properties in Antithesis
  • Assertions in Antithesis
  • Sometimes Assertions
  • Properties to test for
  • Fault injection
  • Reference
  • Webhooks
  • Launching a test in Docker environment
  • Launching a test in Kubernetes environment
  • Launching a debugging session
  • Retrieving logs
  • SDK reference
  • Go
  • Tutorial
  • Instrumentor
  • Assert (reference)
  • Lifecycle (reference)
  • Random (reference)
  • Java
  • Tutorial
  • Instrumentation
  • Assert (reference)
  • Lifecycle (reference)
  • Random (reference)
  • C
  • C++
  • Tutorial
  • C/C++ Instrumentation
  • Assert (reference)
  • Lifecycle (reference)
  • Random (reference)
  • JavaScript
  • Python
  • Tutorial
  • Assert (reference)
  • Lifecycle (reference)
  • Random (reference)
  • Rust
  • Tutorial
  • Instrumentation
  • Assert (reference)
  • Lifecycle (reference)
  • Random (reference)
  • .NET
  • Tutorial
  • Instrumentation
  • Assert (reference)
  • Lifecycle (reference)
  • Random (reference)
  • Languages not listed above
  • Assert (reference)
  • Lifecycle (reference)
  • Assertion Schema
  • Instrumentation
  • Handling external dependencies
  • FAQ
  • Product FAQs
  • About Antithesis POCs
  • Release notes
  • Release notes