/siesta

Stress-free JavaScript/TypeScript testing and benchmarking tool

Primary LanguageTypeScript

link to npm package

Siesta is a stress-free, ubiquitous & open-source JavaScript/TypeScript testing tool developed by Bryntum since 2009.

Version 6 is a complete rewrite, using a modern technology stack and a decade of test driven development experience.

Main features:

  • One test tool to run all types of tests. Siesta can run tests in all modern browsers, Node.js and Deno. Moreover, in browsers, both in-process and out-of-process execution models are supported, so that you can choose the most appropriate one
  • Supports parallel execution
  • Supports native simulation of user actions, like clicking, typing etc.
  • Provides accurate and well-formatted deep diff for equality assertion

Siesta powers the test suites of all Bryntum products and thousands of our clients.

Supported environments

Siesta can run the test in browsers (both in-process and out-of-process), Node.js and Deno.

Siesta supports modern, ever-green browsers only - Chrome, Firefox, Safari and Edge Chromium. IE, legacy Edge and quirks mode are not supported.

Siesta supports all maintained LTS releases of Node.js.

Siesta supports the latest release of Deno.

Installation

Node.js environment:

npm install @bryntum/siesta --save-dev

Deno environment:

deno install -n siesta -A -q --unstable --no-check https://cdn.jsdelivr.net/npm/@bryntum/siesta@latest/bin/siesta_deno.js

Build statuses

Build Node.js Deno Chrome Firefox Safari
Siesta isomorphic Node.js build status Deno build status Chrome build status Firefox build status Safari build status
Siesta browser Chrome build status Firefox build status Safari build status
Siesta Node.js 12 Node.js 12 build status
Siesta Node.js 14 Node.js 14 build status
Siesta Node.js 16 Node.js 16 build status
Siesta Deno Deno build status

Documentation

Please start reading from one the following guides, corresponding to the environment, in which you'd like to run the tests:

Getting started with Siesta in Node.js environment

Getting started with Siesta in Deno environment

Getting started with Siesta in browser environment

Getting started with Siesta in Sencha framework environment

Resources

Website: https://siesta.works

Github repo: https://github.com/bryntum/siesta

Connect

We welcome all feedback, so please let us know how we can improve your testing experience and reduce friction in your TDD cycle.

Please report any bugs found and request features in the issues tracker

Ask questions in the forum

Chat live at Discord

Follow the development blog

Attribution

This software contains icons from the following icon packs (licensed under Creative Common 2.5/3.0 Attribution licenses)

COPYRIGHT AND LICENSE

MIT License

Copyright (c) 2009-2021 Bryntum, Nickolay Platonov