Test automation
that scales across
your teams
Serenity/JS is a TypeScript-native framework that gives your Playwright Test, WebdriverIO, or Cucumber test suite the architecture it needs to scale โ meaningful reports for every audience, and reusable test code to support your entire organisation.
Apache-2.0 licensed ยท Commercial support available ยท Works with your existing tools and CI/CD infrastructure
Test automation aligned with your business
Serenity/JS helps you create automated tests that capture your business language, reflect your business processes, improve collaboration among teams, and provide relevant reports that matter to all stakeholders.
Make your tests speak your language
Serenity/JS Screenplay Pattern helps you create automated tests and test DSLs that capture the concepts and vocabulary of your domain, focus on your business workflows, and bring your team together.
Any browser, any device, any interface
Serenity/JS is a modular and extensible abstraction layer that works seamlessly with integration tools like Playwright, Selenium, WebdriverIO, Appium, or Axios, and gives you a consistent, intuitive, and vendor-neutral API to work with.
Run anytime, anywhere, in any context
Serenity/JS integrates with popular test runners like Cucumber, Jasmine, Mocha, and Playwright Test, and works just as well on your machine as it does on your CI/CD servers, or deployed as part of your continuous monitoring infrastructure.
Share code across projects and teams
Serenity/JS is the first framework designed to make it easy to share and reuse test code not just across test suites, but also across projects and teams. Help your whole organisation benefit from your test automation work!
Use with your favourite IDE and VCS
With Serenity/JS you can write, run, and debug your tests in popular IDEs like JetBrains and VS Code. Serenity/JS tests are high-quality, standards-based Node.js code, so you can commit them to Git to support trunk-based, multi-branch, and pull request-based development workflows.
Report what really matters
Serenity/JS integrates with Serenity BDD to provide powerful living documentation and test reporting that gives meaningful feedback to testers, business folks, and the team as a whole. Serenity/JS tells you not only what tests have been executed, but more importantly, what requirements have been tested.
Recommended by Open-Source Leaders
The Serenity/JS team works closely with other leading open-source projects to ensures seamless integration of our frameworks and tools.
I am deeply impressed with the Serenity/JS ecosystem. I am blown away by the feature set, the numerous deep integrations with other runners and tools, and the consistent level of quality throughout the whole project.
The thorough user-centric documentation is exceptional. It goes from the foundational concept of the Screenplay Pattern to advanced techniques and practices in a very gentle and clear way. The support is also remarkable.
Kudos to Jan and the contributors for all this fantastic work! The world needs more devs and entrepreneurs like you ๐
Serenity/JS has a genuinely inspiring mission: to make test automation collaborative, enjoyable, and accessible for everyone, from business to technical audiences.
The project's dedication to quality, user experience, and innovation shines through in every aspect of the framework, helping you create maintainable and scalable test suites while adhering to open standards and leveraging reliable open-source tools.
WebdriverIO is proud to be a part of the Serenity/JS ecosystem, and I'm excited to see what the future holds for this fantastic project!
The book behind the framework
Learn the layered test architecture behind Serenity/JS, the Screenplay Pattern, and how to design test automation systems that scale across teams and projects.
Get the bookAdd Serenity/JS to your project
Serenity/JS works with your existing tools and infrastructure and supports progressive adoption without disrupting your current workflow. Integrates with GitHub Actions, Jenkins, GitLab CI, and more.
Enhance Playwright Test automation
Add Serenity/JS to your new or existing Playwright Test project to introduce portable test APIs, business-friendly reporting, leverage Serenity/JS integration libraries and write end-to-end and component tests.
Enhance WebdriverIO automation
Add Serenity/JS to your WebdriverIO project to introduce better reporting, reusable test APIs, and make your end-to-end and mobile tests easier to maintain, no matter whether you're using Cucumber.js, Jasmine, or Mocha.
Test Electron desktop apps
Test your Electron applications using the same Screenplay Pattern APIs as web testing โ with structured reporting, reusable interactions, and automatic app lifecycle management.
