TRACK ENGINE: ONLINE
POINTS: 0/680

Back to Ladder
Stage 4: Page States & Dialogsintermediate
Page States & Dialogs
Automate advanced interactions: iframes, JavaScript alerts, file transfers, and popup windows.
Status0% Complete
0/30
Solved
~9h
Hours
0/680
Points
Modules
6 Modules1
Module 1: Page Object Model
Implement Page Object Models, construct locators inside class variables, create action/assertion methods, and group components.
| Status | Drill Title | Difficulty | Points | Action |
|---|---|---|---|---|
| Page Object Model Design Pattern LoginPage | intermediate | 20pts | Start Track | |
| Defining POM Locators in constructor this.usernameInputconstructor | intermediate | 20pts | Start Track | |
| POM class action login method login | intermediate | 20pts | Start Track | |
| POM class assertion verification verifyTitle | intermediate | 20pts | Start Track | |
| Using Page Objects in spec files LoginPage | intermediate | 20pts | Start Track | |
| Component Object Navigation Navbar Navbar | intermediate | 20pts | Start Track |
2
Module 2: Fixtures & Hooks
Structure test suites hooks: beforeAll, afterAll, beforeEach, afterEach, and extend custom fixtures setups.
| Status | Drill Title | Difficulty | Points | Action |
|---|---|---|---|---|
| Group Setups using beforeAll hook test.beforeAllbeforeAll | intermediate | 20pts | Start Track | |
| Group Teardowns using afterAll hook test.afterAllafterAll | intermediate | 20pts | Start Track | |
| Running setup inside beforeEach test.beforeEachbeforeEach | intermediate | 20pts | Start Track | |
| Running cleanup inside afterEach test.afterEachafterEach | intermediate | 20pts | Start Track | |
| Built-in fixtures page context browser pagecontextbrowser | intermediate | 20pts | Start Track | |
| Creating Custom Fixtures extend test.extendextend | intermediate | 20pts | Start Track |
3
Module 3: File Transfers
Handle file uploads, upload from buffer, manage file choosers, wait for downloads, and save files.
| Status | Drill Title | Difficulty | Points | Action |
|---|---|---|---|---|
| Listening for File Chooser events waitForEventfilechooser | intermediate | 20pts | Start Track | |
| Wait for file downloads events waitForEventdownload | intermediate | 20pts | Start Track | |
| Extracting path and suggested filename suggestedFilename | intermediate | 20pts | Start Track | |
| Save download files locally saveAs | intermediate | 20pts | Start Track | |
| Cancel running download streams cancel | intermediate | 20pts | Start Track | |
| Upload virtual files from Buffer setInputFiles | intermediate | 20pts | Start Track |
4
Module 4: Tabs & Contexts
Manage multi-tab workflows, capture popups, orchestrate isolated contexts, and close sessions.
| Status | Drill Title | Difficulty | Points | Action |
|---|---|---|---|---|
| Manage multiple tabs context pages context.pagespages | advanced | 30pts | Start Track | |
| Popup Page Capture and asserts waitForEventpopup | advanced | 30pts | Start Track | |
| Creating multiple isolated contexts browser.newContextnewContext | advanced | 30pts | Start Track | |
| Close secondary context sessions context.closeclose | advanced | 30pts | Start Track |
5
Module 5: Iframes & Dialogs
Traverse iframe scopes, handle nested frames, and accept/dismiss browser JS dialog events.
| Status | Drill Title | Difficulty | Points | Action |
|---|---|---|---|---|
| Iframe Element access frameLocator page.frameLocatorframeLocator | intermediate | 20pts | Start Track | |
| Locating Frames by name or URL page.frameframe | intermediate | 20pts | Start Track | |
| Chaining Nested frameLocator rules frameLocator | intermediate | 20pts | Start Track | |
| Handling window alert dialogs page.ondialog | intermediate | 20pts | Start Track |
6
Module 6: Custom Fixtures
Extend test scopes, manage worker fixtures, yield values with use(), and write auto fixtures.
| Status | Drill Title | Difficulty | Points | Action |
|---|---|---|---|---|
| Test-scoped custom fixtures setups test.extendextend | advanced | 30pts | Start Track | |
| Worker-scoped fixtures shared states worker | advanced | 30pts | Start Track | |
| Fixtures Teardowns post use yield use | advanced | 30pts | Start Track | |
| Auto Fixtures running automatically auto | advanced | 30pts | Start Track |