Search, filter and book a stay end to end
Hard100 pts~2 min
- End-to-end flows
- Autocomplete
- Custom date pickers
- Modals
- Calculated totals
Practice app · StayNest
A home-sharing marketplace: destination autocomplete, a two-month date-range calendar, a guests popover with steppers, results with a list/map toggle and a filters modal, listing pages with a photo gallery, a reserve card with a price breakdown, host profiles in a new tab, a wishlist that needs sign-in and a message-host form.
Your starter code already declares TEST_URL — never hardcode a host.
Objective
Automate the full booking journey: search Lisbon for 12–15 November 2026 with 2 adults and 1 child, filter for a hot tub under $200, reserve the remaining stay and verify the booking confirmation.
Your task
- 1Open TEST_URL, type “Lis” into #destination-input and choose “Lisbon, Portugal” from #destination-suggestions.
- 2Open the calendar (#checkin-field) and choose “Choose Thursday, 12 November 2026” then “Choose Sunday, 15 November 2026”.
- 3Open Who (#guests-button), click #adults-increase once and #children-increase once (2 adults, 1 child), then click Search (#search-button).
- 4Assert #results-summary reports 3 stays and 3 guests.
- 5Click Filters (#filters-button), tick Hot tub (#amenity-hottub), type 200 into #price-max and click #filters-apply once it reads “Show 1 stay”.
- 6Open Bairro Alto Rooftop Loft ([data-testid="listing-card"][data-listing-id="lisbon-rooftop"] .listing-title); assert the reserve card kept the dates and 3 guests and #price-total is $525.64.
- 7Click Reserve (#reserve-button) and assert #booking-confirmation shows the listing, 3 nights, 3 guests, the total $525.64 and a confirmation code (SN-…) in #confirmation-code.
Acceptance criteria
- The booking confirmation is displayed for Bairro Alto Rooftop Loft.
- It covers 3 nights for 3 guests with a total of $525.64.
- A confirmation code starting with SN- is shown and the URL is #/trips/SN-….
- The test makes at least three assertions along the journey.
Fixtures
- guest@staynest.test
- Password
- Nest@2026
- Account name
- Jordan Lee
- Today
- Tuesday, 10 November 2026 (earlier days are disabled)
- Destinations
- Goa · Lisbon · Kyoto · Banff · Cape Town
- Service fee
- 14% of the nightly subtotal
- Guest limits
- Adults 1–16 (adults + children ≤ 16) · infants up to 5 · pets up to 5
- Host verification code
- Shown only on the host profile tab
Selenium WebDriver 4 · Selenium Challenges · StayNest