This repository serves as a template for setting up a new repository for writing API auto tests. It's tailored for developers who require a quick start to API testing with Python.
- Configured with a modern Python stack: Python 3, PyTest, Requests, Behave, Allure for reporting, Graphene for GraphQL.
- Docker environment pre-configured for isolated testing scenarios.
- Make CLI commands for straightforward local development and operations.
- Comprehensive CI checks integrated with GitHub Actions (code quality, security checks, and more).
- Pre-configured files for contribution guidelines, security policy, and pull requests.
Setting up a new repository for API testing often involves repetitive configuration that can be time-consuming. This template provides a pre-configured environment to streamline the creation and setup of API auto tests, allowing developers to focus on writing tests and not on setup.
This software is distributed under the Creative Commons Zero v1.0 Universal license. Please read LICENSE for information on the software availability and distribution.
You can clone this repository locally or use Github functionality "Use this template"
Install the latest docker, docker compose and python3
Use make
command to set up project and automatically install all needed dependencies
make start
That's it. You should now be ready to use QA Automation template!
You can use make
command to easily control and work with project locally.
Execute make
or make help
to see the full list of project commands.
The list of the make
possibilities:
behave A tool to run BDD tests
build Build docker image for python
pylint Run pylint to check codestyle
pytest A popular and powerful testing framework for Python.
sh Dive into docker conatiner and execute any command that you need
start Build docker image and start pytest
test Alias for pytest
Start reading at the GitHub wiki. If you're having trouble, head for the troubleshooting guide as it's frequently updated.
If the documentation doesn't cover what you need, search the many questions on Stack Overflow, and before you ask a question, read the troubleshooting guide.
If this isn't passing, is there something you can do to help?
Please disclose any vulnerabilities found responsibly – report security issues to the maintainers privately.
See SECURITY and Security advisories on GitHub.
Please submit bug reports, suggestions, and pull requests to the GitHub issue tracker.
We're particularly interested in fixing edge cases, expanding test coverage, and updating translations.
If you found a mistake in the docs, or want to add something, go ahead and amend the wiki – anyone can edit it.
Development time and resources for this repository are provided by VilnaCRM, the free and opensource CRM system.
Donations are very welcome, whether in beer 🍺, T-shirts 👕, or cold, hard cash 💰. Sponsorship through GitHub is a simple and convenient way to say "thank you" to maintainers and contributors – just click the "Sponsor" button on the project page. If your company uses this template, consider taking part in the VilnaCRM's enterprise support program.
See changelog.