Aktuell sichte ich meine Methoden in eine neue eigene Bibliothek die ich in IntelliJ als JavaFX Projekt angelegt habe.
Um die Abhängigkeiten zu vereinfachen wurde in das Bibliothek Projekt MAVEN und GIT implementiert.
Wenn ich schon mal dabei bin möchte ich die Methoden mit JUnit5 testen.
Ich habe alles Implemntiert und es wurden in IntelliJ keinerlei Problem angezeigt.
Beim Ausführen der UnitTest Datei erhalte ich folgende Fehlermeldung
Das sind meine integrierten Depencities
Die module-info
Und das ist der Test
Über Hilfe würde ich mich sehr freuen.
Vielen Dank
Um die Abhängigkeiten zu vereinfachen wurde in das Bibliothek Projekt MAVEN und GIT implementiert.
Wenn ich schon mal dabei bin möchte ich die Methoden mit JUnit5 testen.
Ich habe alles Implemntiert und es wurden in IntelliJ keinerlei Problem angezeigt.
Beim Ausführen der UnitTest Datei erhalte ich folgende Fehlermeldung
Exception in thread "main" java.lang.IllegalAccessError: class org.junit.platform.engine.UniqueId (in unnamed module @0x379619aa) cannot access class org.junit.platform.commons.util.Preconditions (in module org.junit.platform.commons) because module org.junit.platform.commons does not export org.junit.platform.commons.util to unnamed module @0x379619aa
at org.junit.platform.engine.UniqueId.forEngine(UniqueId.java:68)
at com.intellij.junit5.JUnit5IdeaTestRunner.<clinit>(JUnit5IdeaTestRunner.java:72)
at java.base/java.lang.Class.forName0(Native Method)
at java.base/java.lang.Class.forName(Class.java:391)
at java.base/java.lang.Class.forName(Class.java:382)
at com.intellij.rt.junit.JUnitStarter.getAgentClass(JUnitStarter.java:241)
at com.intellij.rt.junit.JUnitStarter.prepareStreamsAndStart(JUnitStarter.java:222)
at com.intellij.rt.junit.JUnitStarter.main(JUnitStarter.java:55)
Das sind meine integrierten Depencities
XML:
<dependencies>
<dependency>
<groupId>org.openjfx</groupId>
<artifactId>javafx-controls</artifactId>
<version>20.0.1</version>
</dependency>
<dependency>
<groupId>org.openjfx</groupId>
<artifactId>javafx-fxml</artifactId>
<version>20.0.1</version>
</dependency>
<dependency>
<groupId>org.controlsfx</groupId>
<artifactId>controlsfx</artifactId>
<version>11.1.2</version>
</dependency>
<!-- JUnit Jupiter API -->
<dependency>
<groupId>org.junit.jupiter</groupId>
<artifactId>junit-jupiter-api</artifactId>
<version>5.10.2</version>
</dependency>
<!-- JUnit Jupiter Engine (wird benötigt, um Tests auszuführen) -->
<dependency>
<groupId>org.junit.jupiter</groupId>
<artifactId>junit-jupiter-engine</artifactId>
<version>5.10.2</version>
<scope>test</scope>
</dependency>
<!-- Apache Log4j2 API -->
<dependency>
<groupId>org.apache.logging.log4j</groupId>
<artifactId>log4j-api</artifactId>
<version>2.8.2</version>
</dependency>
<!-- Apache Log4j2 Core -->
<dependency>
<groupId>org.apache.logging.log4j</groupId>
<artifactId>log4j-core</artifactId>
<version>2.8.2</version>
</dependency>
<!-- https://mvnrepository.com/artifact/org.testng/testng -->
<dependency>
<groupId>org.testng</groupId>
<artifactId>testng</artifactId>
<version>7.9.0</version>
</dependency>
<!-- Apache Tika Core -->
<dependency>
<groupId>org.apache.tika</groupId>
<artifactId>tika-core</artifactId>
<version>1.25</version>
</dependency>
<!-- Apache PDFBox -->
<dependency>
<groupId>org.apache.pdfbox</groupId>
<artifactId>pdfbox</artifactId>
<version>2.0.24</version>
</dependency>
<!-- mp3agic -->
<dependency>
<groupId>com.mpatric</groupId>
<artifactId>mp3agic</artifactId>
<version>0.9.1</version>
</dependency>
<!-- Logback Classic implementation -->
<dependency>
<groupId>ch.qos.logback</groupId>
<artifactId>logback-classic</artifactId>
<version>1.0.13</version> <!-- Aktuellste Version von Logback -->
</dependency>
</dependencies>
Die module-info
requires javafx.controls;
requires javafx.fxml;
requires org.controlsfx.controls;
requires log4j.api;
requires org.testng;
requires org.junit.jupiter.api;
opens TestMain.Text to org.junit.jupiter.api;
exports TestMain.Text;
Und das ist der Test
Java:
package TestMain.Text;
import de.mm.bibliotheken.texte.Text;
import org.junit.jupiter.api.Test;
import static org.junit.jupiter.api.Assertions.assertEquals;
public class TextTestAuffuellenZahl {
@Test
public void testAuffuellenZahl() {
// Aufruf der Methode mit verschiedenen Eingaben und Überprüfung der Ausgaben
assertEquals("013", Text.auffuellenZahl(13));
assertEquals("123", Text.auffuellenZahl(123));
assertEquals("999", Text.auffuellenZahl(999));
assertEquals("000", Text.auffuellenZahl(0));
assertEquals("002", Text.auffuellenZahl(2));
assertEquals("005", Text.auffuellenZahl(0000005));
assertEquals("4096", Text.auffuellenZahl(4096));
}
} // TextTestAuffuellenZahl
Über Hilfe würde ich mich sehr freuen.
Vielen Dank