Тестирование контрактов CosmWasm
Тестирование модуля
Для проведения теста добавьте строчку:
Для запуска теста необходимо набрать команду:
Справочник по Cosmwasm https://docs.cosmwasm.com/tutorials/simple-option/testing/
Пример простого контракта и его тестирования https://github.com/InterWasm/cw-contracts/blob/main/contracts/simple-option/src/contract.rs
Интеграционный тест
Пакет cw-multi-test позволяет проводить интеграционные тесты (https://docs.rs/cw-multi-test/latest/cw_multi_test/)
Необходимо выполнить следующие шаги:
1) Инициировать тестовую установку пакета. Ниже мы приводим пример с использованием instantiate_contract()
и дальнейшей работой с execute_contract()
соответственно:
2) Провести интеграционный тест:
Ссылка на документацию Cosmwasm https://docs.cosmwasm.com/docs/1.0/smart-contracts/testing/
Сквозное тестирование в блокчейне Sei
Для проведения сквозного тестирования вам необходимо вновь выполнить следующие шаги:
1) запустите блокчейн на локальной машине или в сети разработчиков (devnet) https://docs.seinetwork.io/smart-contracts-and-local-development/set-up-a-local-network
2) задеплойте свой контракт https://docs.seinetwork.io/smart-contracts-and-local-development/deploy-a-generic-contract
Пример контракта, который может быть использован для локального тестирования можно посмотреть здесь https://github.com/sei-protocol/sei-cosmwasm
Для получения отладочной информации, такой как ошибочный ордер, вы можете использовать набор инструментов на стороне ПО по созданию контракта. Компилятор Rust может выводить ошибки во время компиляции. Также для любой структуры, для которой реализована функция отладки, можно использовать println!
Наконец, вы можете добавить логи в deps.api.debug(err).
Last updated