8
projects
15
classes
36
methods
14
step definitions
4
features
5
scenarios
16
scenario steps
3
API endpoints
Step binding coverage
100%
- 16 bound resolve to exactly one step definition
- 0 ambiguous match more than one step definition
- 0 unbound no step definition matches
Class kinds
api_client7
page_object4
step_class4
Projects
| project | kind | classes | methods | features | scenarios | steps |
|---|---|---|---|---|---|---|
| SampleShop.Api.Cart | shared_library | 2 | 3 | 0 | 0 | 0 |
| SampleShop.Api.Catalog | shared_library | 2 | 4 | 0 | 0 | 0 |
| SampleShop.Api.Identity | shared_library | 2 | 4 | 0 | 0 | 0 |
| SampleShop.Core | shared_library | 2 | 3 | 0 | 0 | 0 |
| SampleShop.Tests.Api | bdd_tests | 2 | 7 | 2 | 3 | 9 |
| SampleShop.Tests.E2E | bdd_tests | 1 | 4 | 1 | 1 | 4 |
| SampleShop.Tests.Ui | bdd_tests | 1 | 3 | 1 | 1 | 3 |
| SampleShop.Ui.Pages | shared_library | 3 | 8 | 0 | 0 | 0 |
Collaborators
4 page objects · 7 API clients
| collaborator | kind | driven by | extends |
|---|---|---|---|
| CartApiClient | api_client | 3 methods | ApiClientBase |
| AuthApiClient | api_client | 2 methods | ApiClientBase |
| CategoriesApiClient | api_client | 2 methods | ApiClientBase |
| CheckoutPage | page_object | 2 methods | PageBase |
| ProductsApiClient | api_client | 2 methods | ApiClientBase |
| CheckoutApiClient | api_client | 1 method | ApiClientBase |
| LoginPage | page_object | 1 method | PageBase |
| ProductPage | page_object | 1 method | PageBase |
| UsersApiClient | api_client | 1 method | ApiClientBase |
| ApiClientBase | api_client | 6 subclasses | |
| PageBase | page_object | 3 subclasses |
API endpoints
3 routes
| verb | endpoint | kind | call sites | scenarios |
|---|---|---|---|---|
| GET | categories/{id} | route | 1 | 3 scenarios |
3 scenarios across 2 features Catalog API2 scenarios
Identity API1 scenario
| ||||
| GET | products/{id} | route | 1 | 3 scenarios |
3 scenarios across 2 features Catalog API2 scenarios
Identity API1 scenario
| ||||
| GET | users/{id} | route | 1 | 1 scenario |
1 scenario across 1 feature Identity API1 scenario
| ||||
Features
4 features · 5 scenarios
Catalog APISampleShop.Tests.Api/Features/Catalog.feature
List available products
exercises 2 endpointsGETcategories/{id}GETproducts/{id}
- Given the shop API is available→
the shop API is availableCatalogApiSteps.cs:19 - When a request for the product list is made→
a request for the product list is madeCatalogApiSteps.cs:27 - Then the product list is returned→
the product list is returnedCatalogApiSteps.cs:40
Add a product to the cart
exercises 2 endpointsGETcategories/{id}GETproducts/{id}
- Given the shop API is available→
the shop API is availableCatalogApiSteps.cs:19 - When product 42 is added to the cart with quantity 2→
product (.*) is added to the cart with quantity (.*)CatalogApiSteps.cs:34 - Then the cart is not empty→
the cart is not emptyCatalogApiSteps.cs:43
Checkout UISampleShop.Tests.Ui/Features/Checkout.feature
Place an order as a signed-in customer
- Given the customer "ada@example.com" is signed in→
the customer "(.*)" is signed inCheckoutUiSteps.cs:18 - When they check out with shipping address "1 King Street"→
they check out with shipping address "(.*)"CheckoutUiSteps.cs:26 - Then the order is placed→
the order is placedCheckoutUiSteps.cs:35
Identity APISampleShop.Tests.Api/Features/Identity.feature
Sign in and read profile
exercises 3 endpointsGETcategories/{id}GETproducts/{id}GETusers/{id}
- Given the shop API is available→
the shop API is availableCatalogApiSteps.cs:19 - When the user "ada@example.com" signs in→
the user "(.*)" signs inIdentityApiSteps.cs:17 - Then the current user's profile can be read→
the current user's profile can be readIdentityApiSteps.cs:24
Purchase journey (E2E)SampleShop.Tests.E2E/Features/PurchaseJourney.feature
Sign in, view a product, and place an order
- Given the customer "ada@example.com" is authenticated→
the customer "(.*)" is authenticatedPurchaseJourneySteps.cs:26 - And the product 42 page is open→
the product (.*) page is openPurchaseJourneySteps.cs:33 - When the customer checks out with address "1 King Street"→
the customer checks out with address "(.*)"PurchaseJourneySteps.cs:41 - Then the order is confirmed→
the order is confirmedPurchaseJourneySteps.cs:50
No steps match that filter.