Get Started. It's Free
or sign up with your email address
Test stage by Mind Map: Test stage

1. create test environment

1.1. docker image hierarchy

1.1.1. Untitled

1.1.2. could create really complicated image hierarchy Untitled

1.2. base image

1.2.1. def create and activate the runtime environment for the application

1.2.2. folder structure separate base image from application runtime env any change to base runtime env or application code trigger continuous workflow Untitled Untitled

1.2.3. contains minimum runtime env reduce footprint of runtime env app dependencies system config default settings

1.2.4. create the base image initial setup choose parent image describe os packages establish virtual env activate virtual env build base image

1.2.5. docker and parent process ID with exec without exec

1.3. development image

1.3.1. def add tests and build dependencies run tests

1.3.2. install test and build dependencies

1.3.3. install test/build tools

1.3.4. create the dev image create the development image folder structure specify dev/build dependencies activate virtual environment and install wheel support pip environment variables specify output directory entrypoint add application source create application requirement files folder structure image review development image vs base image running process test the development image $ docker build -t todobackend-dev -f docker/dev/Dockerfile . create .dockerignore $ docker run --rm todobackend-dev need to add libmysqlclient-dev to dev image reduce testing time scenario specified env var before XDG_CACHE_HOME create a volume container run the app container with volume container use different test settings by default specify on command line to change problem using connect to mysql running test create a docker-compose file run test with docker-compose multi-container racing condition

1.4. docker-compose

1.4.1. a complex test env

1.4.2. orchestrate unit/integration tests

1.5. release image

1.5.1. install application

1.5.2. application config

1.5.3. application entrypoint

2. review test env

2.1. docker-compose.yml

2.1.1. $docker-compose up agent overview Untitled 1. create db service 2. create agent service use an ansible playbook to wait for db service being up and running

2.1.2. $docker-compose up test overview Untitled 1. create cache service 2. create test service

3. summary

3.1. Unit and Integration Test Infrastructure

3.1.1. create base image minimum env to run

3.1.2. create development image development dependencies

3.1.3. running tests using docker

3.2. docker-compose

3.2.1. multi-container env

3.2.2. integration testing between multiple containers

3.2.3. agent services to help orchestrate testing