{"repo":"Nikita-Filonov/python-api-tests","free":true,"listed":false,"github":"https://github.com/Nikita-Filonov/python-api-tests","clone":"git clone https://github.com/Nikita-Filonov/python-api-tests.git","description":"This project serves as a reference implementation for writing clean, maintainable, and effective API tests in Python","language":"Python","stars":12,"topics":["api-client","api-testing","api-testing-framework","api-tests","best-practices","faker","httpx","httpx-client","logging","pydantic"],"license":"Apache-2.0","category":"api-integrations-sdks","readme_excerpt":"Python API tests Links - Allure Report on GitHub Pages - GitHub Actions CI/CD Overview This project provides an example of API testing for a REST API using Python. It incorporates powerful libraries and best practices to ensure maintainability, readability, and efficiency. Key technologies and methodologies used in this project include: - HTTPX – A powerful and efficient HTTP client for making API requests. - Pydantic – Used for data validation, deserialization, and serialization. - Pydantic Settings – Manages test settings in a structured and maintainable way. - Faker – Generates fake data for testing purposes. - Pytest – A full-featured and powerful testing framework in Python. - JSON Schema validation – Ensures contract testing by validating API responses against predefined schemas. - Allure – A comprehensive test reporting framework that provides detailed and visually appealing reports. - Assertions in separate functions – Encourages reusable and atomic test assertions. - API client abstraction – Encapsulates API interaction logic for better modularity and reusability. - Base API client – Serves as the entry point for all HTTP calls. - Logging features – Improves test readability and debugging, especially in CI/CD environments. - Routing as Enum – Replaces raw string URLs with an enumerated routing system for better maintainability. - Pytest plugins – Moves fixtures out of conftest.py to keep the test suite organized and manageable. - HTTPX event hooks – Enables logging a","default_branch":null,"files":null,"tree":[],"storefront":"/r/Nikita-Filonov","claimed":false,"request_supported":{"post":"https://gitbuyer.com/r/Nikita-Filonov/python-api-tests/request-supported","requests":0},"note":"indexed from public GitHub; nothing is for sale on this page. Clone it from GitHub. Paid listings live at /search."}