SnapTest Overview

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:

  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.

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.

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 its 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.
Group 6Record it…Play it…Generate it…GeneratorsSelector AlgorithmsPrivate modeTest organizationTeamsWorkspacesDedicated supportTest data storageDebugger toolsAdaptable TestsCLI tools and APIWhite-labeled codeVariablesMulti-test playbackManual testsComponents