evolve-testing

Explain Evolve SDK testing infrastructure with TestApp, SimTestApp, MockEnv, and Criterion.

4|Updated Feb 11, 2026
One-click install
npx skills add https://github.com/evstack/ev-rs --skill evolve-testing
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: evolve-testing
Source: https://github.com/evstack/ev-rs/tree/main/.claude/skills/evolve-testing
Command: npx skills add https://github.com/evstack/ev-rs --skill evolve-testing

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill includes references (resource) components.

What problem does it solve?

This Skill provides a comprehensive overview and practical examples for testing within the Evolve SDK, enabling developers to write robust and efficient tests for their blockchain applications.

Core Features & Use Cases

  • Testing Infrastructure: Covers TestApp, SimTestApp, MockEnv, and transaction generators for various testing needs.
  • Trace Recording: Demonstrates how to capture execution traces for debugging.
  • Benchmarking: Includes examples for performance testing using Criterion.
  • Use Case: When developing a new module for the Evolve SDK, use this Skill to understand the best practices for unit testing, integration testing, and ensuring deterministic execution of your code.

Quick Start

Use the evolve-testing skill to learn how to set up a test harness for your Evolve SDK module.

Frequently Asked Questions about evolve-testing

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I write unit tests for a blockchain module using the Evolve SDK in Rust?

Unit testing in the Evolve SDK uses TestApp to set up a test harness for your Rust module, providing an isolated environment to verify transaction execution and module logic. TestApp is designed for fast, targeted validation of individual components without requiring a full network setup.

What is the best way to run deterministic simulations for blockchain applications?

For deterministic simulations of blockchain applications, the Evolve SDK provides SimTestApp, which ensures consistent execution outcomes by controlling the testing environment. SimTestApp allows developers to simulate complex transaction sequences and verify state transitions reliably across test runs.

How does MockEnv work for isolated module testing in Rust?

MockEnv works by providing a mocked environment that isolates a specific module from external dependencies during Rust testing. This allows you to test module behavior in a controlled context, ensuring that interactions and state changes are verified independently of the broader blockchain application infrastructure.

Can I benchmark Evolve SDK blockchain modules using Criterion?

Yes, you can benchmark Evolve SDK blockchain modules using Criterion, which is integrated into the testing infrastructure for performance testing. Criterion allows you to measure execution times of transactions and module operations, helping identify performance bottlenecks in deterministic or simulated environments.

When should I use transaction generators in blockchain integration testing?

Use transaction generators in blockchain integration testing when you need to create complex scenarios involving multiple sequential or interacting transactions. The Evolve SDK provides transaction generators to automate the construction of these testing scenarios, ensuring comprehensive coverage of edge cases and state transitions.

How do I capture execution traces for debugging blockchain modules?

To capture execution traces for debugging blockchain modules, use the trace recording feature built into the Evolve SDK testing infrastructure. Trace recording allows you to log detailed execution steps and state changes during tests run with TestApp or SimTestApp, enabling precise debugging of transaction logic.