„Wenn ein Arbeiter seine Arbeit gut machen will, muss er zuerst seine Werkzeuge schärfen.“ – Konfuzius, „Die Gespräche des Konfuzius. Lu Linggong“
Titelseite > Programmierung > Ist MariaDB4j die Lösung für In-Memory-MySQL-Tests mit JUnit?

Ist MariaDB4j die Lösung für In-Memory-MySQL-Tests mit JUnit?

Veröffentlicht am 15.11.2024
Durchsuche:895

Is MariaDB4j the Solution for In-Memory MySQL Testing with JUnit?

Kann MySQL im Arbeitsspeicher für JUnit-Tests verwendet werden?

Bei der Softwareentwicklung ist das Testen von Datenbankinteraktionen unerlässlich, kann jedoch eine erforderliche Zeit erfordern Vollständige Datenbankeinrichtung und -verwaltung. Um diesen Prozess zu vereinfachen, verwenden einige Entwickler SQLite- oder H2-Datenbanken für In-Memory-Tests. Gibt es jedoch eine Option für die Verwendung von MySQL selbst in diesem Zusammenhang?

Lösung: MariaDB4j

Die Antwort liegt in MariaDB4j, einer Gradle/Maven-Abhängigkeit, die eine vollständige Bereitstellung bietet kompatible In-Memory-MySQL-Datenbank für JUnit-Tests. Es erfordert eine minimale Einrichtung:

DB database = DB.newEmbeddedDB(3306);
database.start();
Connection connection = DriverManager.getConnection("jdbc:mysql://localhost/test", "root", "");

Zur zusätzlichen Initialisierung kann ein Startskript eingebunden werden:

database.source("path/to/resource.sql");

Überlegungen

MariaDB4j stellt zwar eine eingebettete MySQL-Lösung bereit, arbeitet jedoch nicht ausschließlich im Speicher. Es erstellt temporäre Dateien im temporären Ordner des Systems. Daher handelt es sich nicht um eine echte In-Memory-Lösung, und Tests, die darauf basieren, weichen möglicherweise von der traditionellen Definition von Unit-Tests ab, die Unabhängigkeit von externen Ressourcen vorschreibt.

Neuestes Tutorial Mehr>

Haftungsausschluss: Alle bereitgestellten Ressourcen stammen teilweise aus dem Internet. Wenn eine Verletzung Ihres Urheberrechts oder anderer Rechte und Interessen vorliegt, erläutern Sie bitte die detaillierten Gründe und legen Sie einen Nachweis des Urheberrechts oder Ihrer Rechte und Interessen vor und senden Sie ihn dann an die E-Mail-Adresse: [email protected] Wir werden die Angelegenheit so schnell wie möglich für Sie erledigen.

Copyright© 2022 湘ICP备2022001581号-3