Skip to content

Latest commit

 

History

History
72 lines (48 loc) · 1.85 KB

File metadata and controls

72 lines (48 loc) · 1.85 KB

🚕 Urban Routes – Taxi Request Automation

Automated End-to-End (E2E) testing project for the Urban Routes application, focused on validating the complete taxi request flow using Selenium and Pytest.


👤 Author

Miguel Bautista Gómez

  • Sprint: 8
  • Cohort: 28

📌 Project Overview

This project automates the full taxi booking journey in the Urban Routes web application.
The automated tests simulate real user interactions to ensure the application behaves correctly at every step of the process:

  • Route selection
  • Fare selection
  • Phone verification
  • Payment method setup
  • Additional service requests
  • Final ride confirmation

🛠️ Tech Stack

Language

  • Python 3.13

Libraries

  • Selenium – Browser automation and UI interaction
  • Pytest – Test execution and structure

🧠 Automation Approach

  • End-to-End (E2E) testing using Selenium WebDriver
  • Page Object Model (POM) design pattern
  • Network log inspection for confirmation code retrieval
  • Explicit waits with WebDriverWait and expected_conditions
  • UI validation through assertions

🧪 Test Scenarios

All test cases are implemented in test_urban_routes.py and cover:

  1. Address input validation (origin and destination)
  2. Comfort fare selection
  3. Phone number input and verification code handling
  4. Credit card payment method entry
  5. Message submission to the driver
  6. Additional service requests (blanket and tissues)
  7. Additional service selection (ice cream)
  8. Taxi request confirmation

📌 The verification code is automatically retrieved using the retrieve_phone_code() method via browser network logs.


▶️ How to Run the Tests

From the project root directory, run the following command in the terminal (Git Bash):

pytest test_urban_routes.py -s