insights-behavioral-spec
Behavioral specifications for Insights pipelines and its integration into OCM, OCP, ACM, Notification Service, and ServiceLog. Specifications are written in Gherkin language, test steps implementations are written in Python 3.x.
- How to run the scenarios
- List of existing behavioral specifications (features)
- List of scenarios
- List of tags
- Makefile targets
- Additional tools
How to run the scenarios
Optional: Spin up the docker containers:
POSTGRES_DB_NAME=test docker-compose up -d
POSTGRES_DB_NAME=test docker-compose --profile test-exporter up -d
POSTGRES_DB_NAME=notification docker-compose --profile test-notification-services up -d
The POSTGRES_DB_NAME
environment variable is mandatory, as the different services expect different database names.
If you don't want to spin up the containers, you'll need to locally run the required services (database, Kafka, etc.). You may need to add or remove the managed
tag in the ${SERVICE}_tests.sh
.
NOTE: Don't forget to set up
PATH
environment variable correctly when tests are run outside containers. That environment variable needs to also contain directory with tested executable files (for exampleinsights-results-aggregator-cleaner
etc.)
If you want to run the real dependencies (content-service and service log), run docker-compose --profile no-mock up -d
instead and export WITHMOCK=0
.
Run the tests for your repository, for example:
make notification-service
List of existing behavioral specifications (features)
All features are listed on this page
List of scenarios
List of scenarios can be seen there
List of tags
It is possible to filter test scenarios to be run not only by project name but also by using tag or tags. List of all tags used in test scenarios are listed on this page
Makefile targets
Please look at this page
Additional tools
This repository contains additional tools and helpers. Description of such tools can be found on this page