node package manager


Serenity/JS: Next generation acceptance testing library for modern web applications.


npm version Build Status Coverage Status Dependencies semantic-release

Serenity/JS is a node.js library designed to make acceptance and regression testing of modern web applications faster, more collaborative and easier to scale.

Serenity/JS gives you:

Although Serenity/JS provides strong support for automating web tests using Protractor and Webdriver, it works very effectively for non-web tests too! Those include tests that exercise web services or even call application code directly.

Please note
⚠️ Serenity/JS is a young project. This means that although it has a very high test coverage, follows semantic versioning and you can use it straight away, its structure and APIs might and most likely will change over the coming weeks as it matures to become 1.0. Is that a problem? We hope not! The feedback from the Community will help us shape Serenity/JS to your needs. Together we can build the best acceptance testing library the JavaScript world has ever seen! ... or at least something useful 😉


Serenity/JS: Next Generation Acceptance Testing for Angular Apps


The below tutorials will help you get started with Serenity/JS and better understand the Screenplay Pattern:

Getting Help

To ask about the usage and troubleshooting of Serenity/JS post a serenity-js tagged question on StackOverflow.

Your feedback matters!

Do you find Serenity/JS useful? Give it a star! ★

Found a bug? Need a feature? Raise an issue or submit a pull request.

Have feedback? Let me know on twitter: @JanMolak

Friends of Serenity/JS

Serenity/JS is continuously delivered to you thanks to:

tested on BrowserStack


Serenity/JS library is licensed under the Apache-2.0 license.

Commercial support

If you're interested in a commercial license, training, support or bringing your team up to speed with modern software development practices - please get in touch.

- Copyright © 2016- Jan Molak and the Serenity Team