Detalhes do pacote

@uuv/assistant

e2e-test-quest1kMIT2.73.2

UUV Helper used to improve the life of testers and developers by generating cucumber phrases from the GUI.

uuv, e2e, end2end, end 2 end

readme (leia-me)

@uuv/assistant



<picture>
UUV Logo
</picture>


Test as final user


A solution to facilitate the writing and execution of E2E tests understandable by any human being(English or French) using cucumber(BDD) and cypress or playwright.



npm


npm


jest


What is @uuv/assistant ?


@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. With @uuv/assistant, we can generate cucumber sentences that will use an execution engine like cypress with @uuv/cypress or playwright with @uuv/playwright.

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
  • JetBrains Plugin that helps you to write and execute your UUV E2E tests from JetBrains IDEs
  • Integrates several runtime engines: Cypress / Playwright
  • User friendly and standardized execution report([example](https://e2e-test-quest.github.io/kata-e2e-uuv/

    Comparison

    | Criteria | Cypress | Playwright | Testing library | UUV |
    |:-: |:-: |:-: |:-: |:-: |
    | User centrism | :x: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: |
    | Native accessibility | :x: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: |
    | Easy setup configuration for BDD test | :warning: | :warning: | :heavy_minus_sign: | :heavy_check_mark: |
    | Understandable by everyone
    (included non dev) | :x: | :x: | :x: | :heavy_check_mark: |

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('h1').contains('Result') | | 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

Screenshots

assistant screenshots

Online demo

assistant online demo

Installation

NPM Package

npm install --save-dev @uuv/assistant

or

yarn add -D @uuv/assistant

Desktop executable

  1. Download executable using the following button
    documentation
  2. Unzip the downloaded zip file

Usage

NPM Package

To launch uuv assistant :

npx uuv-assistant --targetUrl=<targetUrl>
Name Description Example
targetUrl Target website url https://e2e-test-quest.github.io/uuv/

Desktop executable

Execute uuv-assistant.exe from the unzipped folder

Scenario examples

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

The dictionary is available in french and english. It can be accessed with this link:

documentation containing sentences

License


MIT license

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

Support UUV through Open Collective

If you want to help UUV grow, you can fund the project directly via Open Collective.
Every contribution helps us dedicate more time and energy to improving this open-source tool.

Interested in becoming a sponsor?
We welcome sponsorships of all sizes!
Contact us via GitHub or through Open Collective to discuss opportunities.

Authors