Introduction
MultiTest
is a suite of testing tools designed to facilitate multi-contract interactions
within the CosmWasm ecosystem. Its primary focus is on providing developers with a robust framework
for testing complex smart contract interactions and operations involving various Cosmos modules.
MultiTest
is a blockchain SIMULATOR, allowing tested smart contracts to interact as if
they were operating on a real blockchain.
The most valuable advantage of using MultiTest
is that it allows testing and debugging of
smart contracts with access to the Rust source code, eliminating the need to run a complete
blockchain node to begin designing the smart contract functionality. Additionally, MultiTest
enables the execution of tests significantly faster than on a real blockchain, as it bypasses the
overhead associated with network consensus and block production. This results in a more efficient
development cycle, allowing for quicker iterations and faster identification of issues.
While MultiTest
is a blockchain SIMULATOR, it may happen, that the behavior of the real
blockchain might slightly differ in some edge cases. We strongly encourage you to file an issue (opens in a new tab)
with a detailed description of such use case to help us improve the MultiTest
.
In the upcoming chapters, we provide detailed instructions on installing and getting started with
MultiTest
, writing unit tests for smart contracts, testing complex interactions between smart
contracts and testing smart contract interactions with Cosmos modules.
By the end of these chapters, you will have a comprehensive understanding of how to use
MultiTest
for testing and debugging smart contracts in various scenarios.
To successfully follow the upcoming chapters, a basic knowledge of Rust and Cargo is necessary.