SnapTest Overview

SnapTest is a set of tools designed to simplify and speed-up the creation and maintenance of browser QA tests. It’s primary strategy is to cut down the repetitive/mundane aspects of writing QA tests by recording/generating them. The core tools are:

  1. SnapTest Chrome Extension
  2. SnapTest CLI (Command Line Interface)
  3. 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.

As an example, SnapTest can generate and run tests that simulate being a user and logging into a site, changing account information, and logging out.

SnapTest can be used as a web-macro tool, but has been designed for tests in mind. Please use responsibly and follow the terms of use when running against other websites.

The typical user flow when using SnapTest:

A pattern of test/creation & maintenance emerges when using SnapTest to it’s fullest potential. It can be considered the “standard” way to use the tools. It’s as follows:

  1. Record a new test.
  2. Configure recorded actions to be more readable and/or adaptable.
  3. Run to verify the test works properly.
  4. Use the snaptest-cli to generate the code on your filesystem.
  5. Run the generated tests before builds or releases and notice failures.
  6. … time passes as you develop your application …
  7. Re-run the broken test in SnapTest to find and fix the issues.
  8. Regenerate the tests.