INTERMEDIATE · ANCHOR TESTING · FREE

Choose the test that can prove your claim.

A green test only supports the behavior its fixture and runtime actually observed. Match each goal to the smallest harness that includes the boundary you need to check.

No walletNo RPCNo network requestsWorks offline

Follow the evidence boundary

  1. State the claimWhat must be true or rejected?
  2. Name the runtimeHelper, SVM, RPC node, or client?
  3. Assert stateWhat must remain unchanged?
  4. Limit the conclusionWhat did this test not exercise?

CASE 01 · PROGRAM EXECUTION

Test a compiled instruction repeatedly

You have built SBF bytes and need to check an account-constraint failure and an unchanged account. You do not need RPC methods or a live cluster.

Which harness best matches this evidence?

CASE 02 · RPC AND VALIDATOR

Check behavior that depends on local RPC

Your integration test needs the configured local cluster to answer RPC calls and run a transaction through validator behavior. A mock response is not sufficient.

Which harness best matches this evidence?

CASE 03 · RUST INSTRUCTION

Supply every account to one focused Rust test

You want to execute a single instruction against an explicit list of account states and assert the result and post-state. You do not need AccountsDB or validator behavior.

Which harness best matches this evidence?

CASE 04 · STATEFUL INVARIANT

Explore many escrow action sequences

You need coverage-guided sequences of deposits, releases, and refunds, checking after every action that withdrawals never exceed deposits. A failure should be replayable and shrinkable.

Which harness best matches this evidence?

CASE 05 · CLIENT RESPONSE

Exercise delayed, null, and malformed responses

Your application must display safe, honest states for slow, missing, or invalid RPC responses. This test is about client behavior, not the program's account checks.

Which harness best matches this evidence?
Review the harness boundaries

Official references · checked 2026-10-02