SnapTest is a set of tools designed to simplify and speed-up creation/maintenance of browser QA tests. Its primary strategy is to cut down the repetitive/mundane aspects of writing QA tests by recording/generating them. The core tools are:
- SnapTest Chrome Extension
- SnapTest CLI (Command Line Interface)
- SnapTest Open-source code generators
SnapTest is designed to generate tests alongside manually written ones so you don’t feel “locked in”.
What types of tests does SnapTest generate?
SnapTest generates Browser-based tests, also known as “UI”, end-to-end, or regression tests. In general, SnapTest can automate a browser to act as a user.
Consider this example: SnapTest can generate and run tests that simulate being a user and logging into a site, changing account information, and logging out.
The typical user flow when using SnapTest:
A pattern of test/creation & maintenance emerges when using SnapTest to its fullest potential. It can be considered the “standard” way to use the tools. It’s as follows:
- Record a new test.
- Configure recorded actions to be more readable and/or adaptable.
- Run to verify the test works properly.
- Use the snaptest-cli to generate the code on your filesystem.
- Run the generated tests before builds or releases and notice failures.
- … time passes as you develop your application …
- Re-run the broken test in SnapTest to find and fix the issues.
- Regenerate the tests.