Testcontainers - Java-библиотека, которая управляет Docker-контейнерами прямо из тестового кода. Во время выполнения тестов она запускает нужный контейнер - базу данных, брокер сообщений, поисковый движок и т.д. - а по завершении останавливает и удаляет контейнер.Зачем это нужно? Для интеграционных тестов на реальном ПО, а не на in-memory эмуляторах. Тест работает с тем же движком, что и в продакшене.В этой статье я разберу, как можно оптимизировать работу с Testcontainers:tmpfs - перенос файлов в оперативную память.Прединициализация - перенос тяжёлой инициализацию в отдельный Docker-образ.Если по первому пункту, в интернете есть статьи, то по второму - практически не встречаются, и выбранный мною подход нигде не описан.В качестве примера буду использовать контейнер с MySQL, хотя все написаное справедливо и для любых других сервисов. Читать далее