Back to Leptos

E2E Testing

examples/regression/e2e/README.md

0.8.181.6 KB
Original Source

E2E Testing

This example demonstrates e2e testing with Rust using executable requirements.

Testing Stack

RoleDescription
CucumberTest RunnerRun Gherkin specifications as Rust tests
FantocciniBrowser ClientInteract with web pages through WebDriver
Cargo LeptosBuild ToolCompile example and start the server and end-2-end tests
chromedriverWebDriverProvide WebDriver for Chrome

Testing Organization

Testing is organized around what a user can do and see/not see. Test scenarios are grouped by the user action and the object of that action. This makes it easier to locate and reason about requirements.

Here is a brief overview of how things fit together.

bash
features
└── {action}_{object}.feature   # Specify test scenarios
tests
├── fixtures
│   ├── action.rs               # Perform a user action (click, type, etc.)
│   ├── check.rs                # Assert what a user can see/not see
│   ├── find.rs                 # Query page elements
│   ├── mod.rs
│   └── world
│       ├── action_steps.rs     # Map Gherkin steps to user actions
│       ├── check_steps.rs      # Map Gherkin steps to user expectations
│       └── mod.rs
└── app_suite.rs                # Test main