Skip to content

MaverickMolko/qa-project-Urban-Routes

Folders and files

NameName
Last commit message
Last commit date

Latest commit

ย 

History

3 Commits
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 

Repository files navigation

๐Ÿš€ Automated Testing Project: Urban Routes


๐Ÿ“ Project Description

This project contains a set of end-to-end (E2E) automated tests for the Urban Routes taxi booking web application. The tests simulate the complete user flow, from setting up a route and selecting a vehicle type to confirming the trip, including payment method management and adding extras. The main objective is to verify that the application's key functionalities work correctly and that the user experience is fluid.

With a total of 9 tests, the first 8 tests integrate steps to complete the flow up to a certain point, with the ninth test integrating the complete process. This design allows the tests to easily detect errors during the execution of a specific step.


๐Ÿ’ป Technologies and Techniques Used

This project utilizes modern technologies and best practices in web automation:

  • [Python] - The main programming language used for the development of the test scripts.
  • [Selenium WebDriver] - A web browser automation framework that allows simulating user interactions.
  • [pytest] - The testing framework used to organize and execute the tests. It offers a clear structure and detailed reporting.
  • [Page Object Model (POM) Pattern] - The code structure is based on this design pattern, where web page elements and user actions are encapsulated in classes (UrbanRoutesPage), making the code more modular, reusable, and easy to maintain.
  • [Robust Locators] - Various locator types such as By.ID, By.CSS_SELECTOR, and By.XPATH are used to reliably identify and select page elements.
  • [Explicit Waits] - The use of WebDriverWait with expected_conditions ensures that page elements are ready for interaction, preventing synchronization failures and improving test stability.

๐Ÿ› ๏ธ How to Run the Tests

Follow these steps to run the automated tests in your local environment.

Prerequisites: Make sure you have Python and a Chrome browser installed on your system.

Dependency Installation: Open your terminal, navigate to the project directory, and run the following command to install the necessary libraries:

  • Bash
  • pip install selenium pytest

โš™๏ธ Data Configuration:

Ensure that the data.py file in the root directory contains the necessary variables such as origin and destination addresses, phone number, and credit card data for the tests.

Execution: To run all tests, execute the following command in your terminal from the project's root directory:

  • [Bash]
  • [pytest] - Pytest will automatically detect and execute all defined tests. The result will be displayed in the terminal, indicating whether the tests passed or failed.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages