Skip to content

Project for automating the voitixler.com course "API and Postman course" on Python

Notifications You must be signed in to change notification settings

BohdanObruch/wexler_garage_api

Repository files navigation

Automation project according to the Api documentation in swagger in Python and the request library.

The following functionality is covered by autotests:

API tests

  • Administration

    • ✅ Administration
  • Car Engines

    • ✅ List car engines
    • ✅ Create car engines post
    • ✅ Create car engines put
    • ✅ Details by random engine number
    • ✅ Update car engines
    • ✅ Partial update car engines
    • ✅ Delete car engines
  • Cars

    • ✅ List cars
    • ✅ Create cars post
    • ✅ Create cars put
    • ✅ Details by random car
    • ✅ Update cars
    • ✅ Partial update cars
    • ✅ Delete cars
  • Customers

    • ✅ List customers
    • ✅ Create customers post
    • ✅ Create customers put
    • ✅ Details by random customer
    • ✅ Update customer
    • ✅ Partial update customer
    • ✅ Delete customer
  • Kitchen

    • ✅ Brew coffee in coffee maker list
  • Operations

    • ✅ Operations list
    • ✅ Create operations
    • ✅ Init operations
    • ✅ Details by random operations
    • ✅ Update operations
    • ✅ Partial update operations
    • ✅ Delete operations
    • ✅ Finished operations
    • ✅ Operations in progress
    • ✅ Stop operations
  • Payments

    • ✅ Payments list
    • ✅ Create payments post
    • ✅ Create payments put
    • ✅ Payments success
    • ✅ Read payments
    • ✅ Update payments
    • ✅ Partial update payments
    • ✅ Delete payments
  • Root

    • ✅ Root list
  • Services

    • ✅ Services list
    • ✅ Create services post
    • ✅ Apply discounts v2 services
    • ✅ Create services put
    • ✅ Details by random service id
    • ✅ Update services
    • ✅ Partial update services
    • ✅ Delete services
    • ✅ Apply discounts services
    • ✅ Apply discounts for all services
  • User

    • ✅ User login
    • ✅ Login refreh

The project was implemented using



Documentation for APIs and endpoints

Swagger


Autotests are run on the Jenkins server

Jenkins


Running tests

Local Launch:

pytest .

If you uses TMS Testomat:

Add the Testomat variable to the environment variables of the PC

set TESTOMATIO=api_key 

pytest --analyzer add 
pytest --analyzer sync

Remote launch:

python3 -m venv .venv
. .venv/bin/activate
pip install poetry
poetry install
poetry run pytest

If you uses TMS Testomat:

python3 -m venv .venv
. .venv/bin/activate
pip install poetry
poetry install
TESTOMATIO=api_key pytest --analyzer sync

Testomat overview

Here are the results of test execution.

Testomat Report


Testomat test result

Results of running tests with added Report Notifications to email

Testomat Report

Dashboard

Dashboard with the tests on Testomat.io

Testomat project dashbord


About

Project for automating the voitixler.com course "API and Postman course" on Python

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages