Skip to main content

Testing blocks

The testing feature allows users to test their smart contracts in a real Tezos environment against a given protocol.
It provides various actions that enable the complete testability of smart contracts.

Testing toolbox button

Create a test suite

The test suite block is a top-level block that aggregates various testing actions sequentially, allowing the user to validate if the contract is functioning as designed.

Operation Actions

Deploy a contract

A contract origination creates a new smart contract from a compilation output and specifies its initial amount of tokens and its initial storage.

Call a contract

A contract call creates a transaction operation, transferring an amount to the recipient contract and executing code if the recipient is an originated contract.

Create a test wallet

This action creates a test wallet that other actions can use to validate smart contract conditions. An example is having a test wallet serving as administrator and ensuring that only that wallet can do administrative operations.

Assertion Actions

Assert the contract storage

This action compares the actual storage of a contract against an expected value provided by the user. The assertion expects both values to be identical, otherwise fails.

Assert the contract storage

Assert the contract balance

This action compares the actual balance of a contract against an expected amount provided by the user. The assertion expects both values to be equal, otherwise fails.

Context Actions

Modify chain identifier

Modifies the chain identifier. It may be useful when testing signatures against replay attacks.

Chain identifier example: NetXynUjJNZm7wi

Modify chain identifier

Macros (Value expansion)

Get address of originated contract / wallet

This macro expands to an actual Tezos address of a contract or account created in the test suite. The address is known only during the execution of the test suite.

Get address of originated contract / wallet

Get balance of originated contract / wallet

This macro expands to an actual Tezos amount of a contract or account created in the test suite. The balance is known only during the execution of the test suite.