Tests → Scenarios → Steps (UI + API) → DX API Wrappers → Locators → Widget Locators
→ Klik op een kaart om verbonden lagen te highlighten. Klik nogmaals of buiten om te resetten.
Tests
myFlow.spec.ts
Roept LoginScenarios en CollectInformationScenarios aan. Geen directe UI of API interactie.
import { login } from ‘../Scenarios/loginScenarios’
anotherFlow.spec.ts
Meerdere tests kunnen hetzelfde Scenario hergebruiken met andere context of data.
testContext: TestContext
Regel: Tests bevatten geen logica. Ze orchestreren Scenarios en doen
expect() assertions.
importeert & roept aan
Scenarios
LoginScenarios
Afhandelen van login flows. Alleen UI — geen API-equivalent.
Scenarios/loginScenarios.ts
CollectInformationScenarios
Ontvangt een
strategy: 'UI' | 'API' bij instantiatie. Zelfde scenario-logica, de geïnjecteerde implementatie bepaalt de uitvoering.new CollectInformationScenarios(ctx, ‘UI’ | ‘API’)
Regel: Een Scenario weet wat er moet gebeuren, niet hoe. De
strategy bepaalt welke implementatie wordt gebruikt — de logica blijft één.
delegeert op basis van strategy naar UI- of API-stap
Steps
UI — Page Objects (per Assignment)
LoginPage
Login-flow via UI. Geen API-equivalent — vereist echte browsersessie.
pages/loginPage.ts · UI only
CollectPersonalDetailsStep
Vult persoonlijke gegevens in. Gebruikt TextLocator, DatePickerLocator, AutocompleteLocator.
pages/collectPersonalDetails.ts
CollectPaymentDetailsStep
Vult betalingsgegevens in. Gebruikt TextLocator en DropdownLocator.
pages/collectPaymentDetails.ts
MyWorkList
Navigeert en interacteert met de Pega worklist. Selecteert assignments.
pages/myWorkList.ts
Niet één Page Object per flow — maar per assignment. Klein, focused, vervangbaar.
API — API Objects (equivalent per Assignment)
APICollectPersonalDetails
Zet of valideert persoonlijke gegevens via Pega REST. Gebruikt getCase + patchCase.
API/pages/apiCollectPersonalDetails.ts
APICollectPaymentDetails
Verwerkt betalingsgegevens via API. Gebruikt getCase + patchCase.
API/pages/apiCollectPaymentDetails.ts
APIMyWorkList
Valideert worklist via API. Gebruikt getCases + getAssignment.
API/pages/apiMyWorkList.ts
Gebruik: setup/teardown, validatie achter de UI, of vervanging van trage UI-stappen.
DX API
Pega DX API Wrappers — getCase, patchCase, createCase, getCases, getAssignment, submitAssignment
▼ uitklappen
Locators
Locators & Widget Locators — UI Page Objects gebruiken deze gedeelde bibliotheek
▼ uitklappen
Tests
Scenarios
UI Steps
API Steps
DX API Wrappers
Locators
Widget Locators