<h1 style="display: flex; align-items: center; gap: 10px;">
  <img src="./docs/testla-logo.png" alt="Testla Logo" style="height: 32px;">
  Testla Screenplay-Playwright
  <img src="./src/reporter/html/src/files/icons/playwright-logo.svg" alt="Testla Logo" style="height: 32px;">
</h1>

[![tests](https://github.com/testla-project/testla-screenplay-playwright-js/actions/workflows/execute_tests.yaml/badge.svg?branch=main)](https://github.com/testla-project/testla-screenplay-playwright-js/actions/workflows/execute_tests.yaml)
[![NPM Version](https://badge.fury.io/js/@testla%2Fscreenplay-playwright.svg)](https://badge.fury.io/js/@testla%2Fscreenplay-playwright)
[![Downloads](https://img.shields.io/npm/dm/@testla/screenplay-playwright.svg)](https://npm-stat.com/charts.html?package=@testla/screenplay-playwright)

## Why Testla

**Testla** is a free and open-source acceptance testing library that can help you establish a clear link between the expected business functionality and the actual working state of your software system.

We've designed Testla to make it easier for you to create test scenarios that build a shared understanding and trust between your business sponsors and delivery teams and to help you prove that your system meets and continues to meet its requirements.

It enables you to create multi-actor acceptance and regression tests that captures your **domain vocabulary**, model your **business workflows**, and help you write **high-quality test automation code** you can reuse across projects and teams. 

## Prerequisites

In order to use testla you need to [install](https://playwright.dev/docs/intro) and [configure](https://playwright.dev/docs/test-configuration) Playwright!

## Installation

The easiest way to get started is to use our kickstart CLI tool which you can find [here](https://www.npmjs.com/package/@testla/create-screenplay?activeTab=readme). It will also take care of the installation and optimal configuration of Playwright (see prerequisites).

```bash
npm init @testla/screenplay
```

If you prefer to do the setup manually you may want to start by installing Testla Screenplay for Playwright using npm.

```bash
npm install --save-dev @testla/screenplay-playwright
```

## 👨‍🏫 Learn Testla

Testla offers plenty of resources to help you get started with the solution:

- [Screenplay Pattern Overview](./docs/screenplay_pattern_overview/screenplay_pattern.md)
- [Guide 🚀️](./docs/guides/guides.md) - comprehensive introduction to Testla
- [Screenplay Elements](./docs/screenplay_elements/screenplay_elements.md) - API reference and usage examples for Testla
- [Issues](https://github.com/testla-project/testla-screenplay-playwright-js/issues) - Feature Requests or Defects
- [Changelog](https://github.com/testla-project/testla-screenplay-playwright-js/releases)

## 📣 Your feedback matters!

Do you find Testla useful? Give it a ⭐ star on GitHub!<br>
Found a bug? Need a feature? Raise [an issue](https://github.com/testla-project/testla-screenplay-playwright-js/issues?state=open)
or submit a pull request.<br>
Want to get in direct contact with us? Use our [Discord Community](https://discord.gg/MDRjCH3v).
