MySQLと完全に互換性があり、JUnitテストケース内で使用できるインメモリデータベースを使用する最も簡単な方法は、imho MariaDB4jです。Gradle(/ Maven)依存関係が必要です( http://search.maven.org/#search%7Cga%7C1%7Ca%3A%22mariaDB4j%22 )および開始する数行のコード:
DB database = DB.newEmbeddedDB(3306);
database.start();
Connection connection = DriverManager.getConnection("jdbc:mysql://localhost/test", "root", "");
スタートアップスクリプトは
を介して含めることができますdatabase.source("path/to/resource.sql");
GitHub readmeの詳細: https://github.com/vorburger/MariaDB4j
編集:私はこの答えにいくつかのヒントを追加しています:MariaDB4jはシステムの一時フォルダにファイルを追加しているようです。したがって、組み込みの方法で機能します。つまり、何もインストールする必要はなく、目的のビルドツールを介して依存関係を使用できます。しかし、これは真のメモリ内のみのソリューションではありません。したがって、単体テストはファイルやデータベースに依存してはならないため、単体テストについて話すことはできません。