Need help with insta?
Click the “chat” button below for chat support from the developer who created it, or find similar developers for support.

About the developer

659 Stars 38 Forks Apache License 2.0 395 Commits 13 Opened issues


A snapshot testing library for rust

Services available


Need anything else?

Contributors list

insta: a snapshot testing library for Rust

Build Status License Documentation VSCode Extension


Snapshots tests (also sometimes called approval tests) are tests that assert values against a reference value (the snapshot). This is similar to how

lets you compare a value against a reference value but unlike simple string assertions, snapshot tests let you test against complex values and come with comprehensive tools to review changes.

Snapshot tests are particularly useful if your reference values are very large or change often.


fn test_hello_world() {
    insta::assert_debug_snapshot!(vec![1, 2, 3]);

Curious? There is a screencast that shows the entire workflow: watch the insta introduction screencast. Or if you're not into videos, read the one minute introduction.

Insta also supports inline snapshots which are stored right in your source file instead of separate files. This is accomplished by the companion cargo-insta tool.

Editor Support

For looking at

files there is a vscode extension which can syntax highlight snapshot files, review snapshots and more. It can be installed from the marketplace: view on marketplace.

jump to definition


Insta uses

for all its diffing operations. You can use it independently of insta.

License and Links

We use cookies. If you continue to browse the site, you agree to the use of cookies. For more information on our use of cookies please see our Privacy Policy.