@uuv/cypress
TypeScript icon, indicating that this package has built-in type declarations

1.10.0 • Public • Published

@uuv/cypress

UUV Logo

Test as final user

Make test writing fast, understandable by any human understanding English or French.

npm cypress testing-library cucumber

Benefits

  • If used correctly, integrates accessibility from the development stage
  • A living documentation is possible because we propose an unified language for developers and non-developers with a rich dictionary of ready-to-use sentences
  • @uuv/assistant that facilitates the writing of tests by suggesting the most accessible sentences
  • Integrates several runtime engines: Cypress / Playwright
  • User-friendly and standardized execution report

    Comparison

Criteria Cypress Playwright Testing library UUV
User centrism ✔️ ✔️ ✔️
Native accessibility ✔️ ✔️ ✔️
Easy setup configuration for BDD test ⚠️ ⚠️ ✔️
Understandable by everyone
(included non dev)
✔️

Syntax example

With this dom example :

<body>
<h1>Result<h1>
</body>

we see that the sentence proposed by UUV is the most understandable of all

Library Syntax
Cypress cy.get('result').should('exist')
Playwright await expect(page.getByTitle('Result')).toHaveCount(1)
Testing library expect(screen.getByTitle(/Result/i)).toBeTruthy()
UUV Then I should see a title named "Result"

Documentation

documentation

What is @uuv/cypress?

The @uuv library (User centric Usecases Validator) is an ecosystem that simplifies the writing of End to End tests in a BDD approach and a user-centric way.
We can use the cypress engine to run test or playwright with @uuv/playwright

Demonstration

Demo in english

runner-cypress in english

Demo in french

runner-cypress in french

Installation

npm install --save-dev @uuv/cypress

or

yarn add -D @uuv/cypress

Configuration (optional)

documentation for configure uuv cypress

Usage

Scenarios example

You can find test examples here : weather-app.feature

Write test

To write your first test, create the file uuv/e2e/first-test.feature in the project root with the following content :

Feature: Hello World

Scenario: Search - Successful case
  When I visit path "/"
  Then I should see an element with role "heading" and name "My app title"

For more details, please go to the documentation:

documentation for write test

Run test

browser mode

npx uuv open

or

yarn uuv open

headless mode

without args
npx uuv e2e

or

yarn uuv e2e
with args
npx uuv e2e --browser=edge --env="{'TAGS':'@mobile'}" --generateHtmlReport

or

yarn uuv e2e --browser=edge --env="{'TAGS':'@mobile'}" --generateHtmlReport

For more details, please go to the documentation:

documentation for run test

License


MIT license

This project is licensed under the terms of the MIT license.

Authors

Package Sidebar

Install

Weekly Downloads

68

Version

1.10.0

License

MIT

Unpacked Size

862 kB

Total Files

544

Last publish

Collaborators

  • 2setech
  • fr.dice