Yellowbox
Yellowbox makes it easy to run docker containers as part of black box tests.
Documentation: https://yellowbox.readthedocs.io/
Examples
Say you want to run a blackbox test on a service that depends on a redis server.
from yellowbox.clients import docker_client
from yellowbox.extras import RedisService
def test_black_box():
with docker_client() as docker_client, RedisService.run(docker_client) as redis:
redis_port = redis.client_port()
...
def test_black_box_with_initial_data():
with docker_client() as docker_client,
RedisService.run(docker_client) as redis,
redis.client() as client:
client.set("foo", "bar")
...
License
Yellowbox is registered under the MIT public license