Det enklaste sättet att använda en minnesdatabas som är helt kompatibel med MySQL och som kan användas i JUnit-testfall är imho MariaDB4j. du behöver bara ett Gradle (/Maven) beroende (http://search.maven.org/#search%7Cga%7C1%7Ca%3A%22mariaDB4j%22 ) och några rader kod för att starta:
DB database = DB.newEmbeddedDB(3306);
database.start();
Connection connection = DriverManager.getConnection("jdbc:mysql://localhost/test", "root", "");
ett startskript kan inkluderas via
database.source("path/to/resource.sql");
Mer information om GitHub readme:https://github.com/vorburger/MariaDB4j
EDIT:Jag har ett lägg till några tips till det här svaret:MariaDB4j verkar lägga till filer i systemets temporära mapp. Så det kommer att fungera på ett inbäddat sätt vilket betyder att det inte finns något behov av att installera något och du kan bara använda beroendet via ditt önskade byggverktyg. Men det är inte en sann lösning som endast är i minnet och därför kan vi inte längre tala om enhetstester eftersom enhetstester inte får förlita sig på filer eller databaser