CI/CD & Staging

Test against live conditions
without production exposure

Validate every contract, integration, and cross-chain flow against the real blockchain state before deployment.

tenderly-ci · checks running
main ← feat
#4082OPEN
feat: add CCIP bridge support
Virtual Environment spawnedrunning…
487/500 E2E pass
Bridge: cross-chain msg delivered
Gas regression: −3%
4 checks · 1 pending
The value

Preview execution in full-fidelity simulated environments

Build on real conditions instead of one-off local setups, mock contracts, and stale public testnets. Validate every contract deployment, parameter change, and bridge integration that touches live capital and users.

01

Catch failures in simulated environments

Test every contract, integration, and cross-chain flow against realistic conditions to surface issues before deployment.

02

Reproduce any production condition on demand

Test and reproduce cross-chain flows, oracle deviations, liquidity drains, and large-position scenarios in a single environment that mirrors live state.

03

Focus on the product, not the infrastructure

Focus resources on core product development instead of local node maintenance, manual deployments, and custom bridge mocks.

Every commit · validatedPR #4082 · main
01
Commit
feat: bridge ccip
02
Virtual Environment spawned
forked mainnet @19284k
03
Tests running
0/487 E2E
04
All pass
✓ no regressions
05
Ship
merge approved
The development cycle

The entire development cycle in a single modeling environment

From every commit through staging to production debugging — one shared environment that mirrors real chain conditions.

CI/CD

Run every commit through real mainnet conditions

Test against the production conditions in which your code will actually run. Spin up fresh, isolated environments automatically per commit, pull request, or pipeline stage, with current balances, contract storage, and external dependencies. Catch chain-specific behavior early, reproduce and debug CI failures immediately, and speed up feedback loops across teams.

Cross-chain testing

Test cross-chain flows end-to-end in a single multichain environment

Validate complete cross-chain workflows, including failure scenarios, replay conditions, and oracle dependencies, before any transaction reaches production. Configure a single simulation environment for every network your product runs on, with built-in support for LayerZero, Chainlink CCIP, and Across bridges. Relay cross-chain messages instantly, pause auto-relay for full control, and step through execution manually.

Staging

Stage entire applications on a shared state

Enable faster, iterative development and testing across teams against the same shared state. Connect smart contracts, frontend, and backend to a single staging environment so engineering, QA, and product teams can validate end-to-end flows under conditions that mirror production. Run end-to-end integration tests, clone environments for every team, and iterate faster without faucet limitations.

Debugging

Reproduce, trace, and debug failures faster

Investigate CI run failures, unexpected contract behavior, or failing transactions with full execution visibility. Inspect full traces, decoded events, balance and state changes, and gas usage, and identify the exact line of code behind a bug. Troubleshoot and fix the issue, share links to reverts with the team, and continue testing.

Capabilities

Run pre-production validation with full control & flexibility

Environment

Multichain simulation environment

Test cross-chain logic in a single full-fidelity modeling environment for as many networks as your product runs on.

State sync

Network mirroring & state synchronization

Validate against the actual state and behavior of production networks, with real oracle prices, pool liquidity, and protocol state.

Bridging

Native bridge support for cross-chain workflows

Preview message passing and cross-chain asset movements with native support for LayerZero, Chainlink CCIP, and Across.

Control

Full control and state manipulation

Override any account balance, fund any ERC-20 in any amount, advance time, mine blocks, impersonate any address, and revert state.

Debugging

Built-in explorer & debugging tools

Troubleshoot execution bugs and failed tests instantly with decoded insights, debugging tools, and shareable private and public explorers.

Integrations

Integrations with your existing workflows

Extend Hardhat and Foundry, automate deployment with GitHub Actions, and connect frontends through standard wallet kits.

Teams

Customizable to your engineering workflow

Engineering teams across different operating environments use Tenderly to preview the effects of product upgrades, protocol changes, and cross-chain workflows before production.

DeFi

Validate cross-chain logic, bridge integrations, and liquidity assumptions before shipping to production. Test contract changes and protocol upgrades, stage entire applications, and preview cross-chain deployments and bridge integrations. Debug production issues on a shared state for contract, frontend, and backend teams.

Explore DeFi solutions →
Financial Institutions

Launch tokenized assets, stablecoin rails, and blockchain financial products, knowing what to expect in production. Enable your engineering team to test in private staging environments with real liquidity, protocols, and external dependencies. Create development and deployment pipelines with complete logs and audit trails to meet the required compliance standards.

Explore institutional solutions →
Networks

Give key protocols, internal developers, and ecosystem builders a production-fidelity environment to integrate against your chain. Enable them to test custom precompile behavior and non-standard implementations under conditions that mirror your network.

Explore network solutions →
Testimonials

How engineering teams build and test with Tenderly

"

With the Aave app, this is the first time we're building this multichain vision where actions need to go between chains. That's where we started using the CCIP integration on Virtual TestNets. It really streamlined our development environment and allowed us to test things we couldn't before.

"
Josh Stevens
ex-SVP of Engineering, Aave
"

When building a new frontend, you have all these little branches on Virtual TestNets, and they eventually result in a single outcome. This dynamic and more incremental nature of staging deployments with Virtual TestNets is really powerful.

"
0xdeniz
Lead Technical Coordinator, Sky
"

The shared state is a killer feature for us. It saves hours on debugging because I don't have to figure out why a revert happened in the first place, which is the case when everyone has a local fork with a different state.

"
wavey
Protocol engineer, Yearn Finance