Testcontainers
A library to support tests with throwaway instances of Docker
...Use a containerized instance of a MySQL, PostgreSQL or Oracle database to test your data access layer code for complete compatibility, but without requiring complex setup on developers' machines and safe in the knowledge that your tests will always start with a known DB state. Any other database type that can be containerized can also be used. For running your application in a short-lived test mode with dependencies, such as databases, message queues or web servers. Use containerized web browsers, compatible with Selenium, for conducting automated UI tests. ...