Zurück zur Skill-Übersicht

Skill-Wissen und Projektmarkt

JUnit

Freelancer, Projekte, Experten und Wissen rund um JUnit.

Kategorie

Monitoring

Quelle

Junit

Einordnung

JUnit Freelancer, Projekte, Experten und Wissen auf jobtic.com

JUnit gehört zu den gefragtesten Kompetenzen im modernen IT-Projektmarkt. Unternehmen, Recruiter, Projektanbieter und Agenturen suchen kontinuierlich nach qualifizierten IT-Freelancern, Beratern, Entwicklern, Consultants, Administrators, Engineers und Spezialisten mit Erfahrung in JUnit.

Auf jobtic.com finden Unternehmen und Freelancer eine moderne Plattform für IT-Projekte, Projektvermittlung, Freelancer-Profile, Experten-Suche, Projektakquise und berufliche Vernetzung rund um JUnit und viele weitere Technologien, Tools, Systeme, Methoden und IT-Bereiche.

Wikipedia

Junit

Artikel öffnen

JUnit ist ein Framework zum Testen von Java-Programmen, das besonders für automatisierte Unit-Tests einzelner Units (Klassen oder Methoden) geeignet ist. Anfänglich wurde JUnit von Erich Gamma und Kent Beck entwickelt. Es basiert auf Konzepten, die ursprünglich unter dem Namen SUnit für Smalltalk entwickelt wurden.

Mittlerweile existieren JUnit-ähnliche Frameworks auch für viele andere Programmiersprachen. Oft werden diese Programme unter dem Namen xUnit zusammengefasst.

Funktionsweise

Ein JUnit-Test kennt nur zwei Ergebnisse: Entweder der Test gelingt (dann ist er „grün“) oder er misslingt (dann ist er „rot“). Das Misslingen kann als Ursache einen Fehler (Error) oder ein falsches Ergebnis (Failure) haben, die beide per Exception signalisiert werden. Der Unterschied zwischen den beiden Begriffen liegt darin, dass Failures erwartet werden, während Errors eher unerwartet auftreten. Technisch werden Failures mittels einer speziellen Exception namens AssertionFailedError signalisiert, während alle übrigen Exceptions vom JUnit-Framework als Error interpretiert werden.[2]

JUnit im Softwareentwicklungsprozess

JUnit ist ein wichtiges Hilfsmittel im Extreme Programming und unterstützt in diesem Zusammenhang die Idee des Extreme Testing.

Vorgehensweise

Dabei schreibt ein Programmierer zuerst einen automatisch wiederholbaren (JUnit-)Test und dann den zu testenden Code. Der Test ist selbst ein Stück Software und wird ebenso wie der zu testende Code programmiert. Wenn zu einem späteren Zeitpunkt ein anderer Programmierer den so entstandenen Code ändern möchte, so ruft er zuerst alle JUnit-Tests auf, um sich zu vergewissern, dass der Code vor seiner Änderung fehlerfrei ist. Dann führt er die Änderung durch und ruft die JUnit-Tests erneut auf. Misslingen diese, so weiß er, dass er selbst einen Fehler eingebaut hat, und muss ihn korrigieren. Dieser Zyklus wiederholt sich solange, bis alle JUnit-Tests wieder fehlerfrei durchlaufen.

Dieses Verfahren wird auch „testgetriebene Entwicklung“ (englisch test-driven software development) genannt und zählt zu den agilen Methoden. Die Idee dabei ist, fehlerarmen Code zu erzeugen, indem nichts implementiert wird, was nicht auch getestet wird. Werden Testfälle erst nach dem Code entwickelt, so ist die Wahrscheinlichkeit höher, wichtige Testfälle zu übersehen.

Beispiel einer JUnit Testklasse

JUnit Testcases werden als Methoden in Klassen deklariert. Für die Initialisierung oder Erstellung von Testdaten können Methoden definiert werden, die vor oder nach Testcases ausgeführt werden.[3]

import org.junit.jupiter.api.*;

class Testklasse {
    @BeforeAll
    static void setUpKlasse() throws Exception {
        // Code, der einmalig vor Ausführung des ersten Testcase ausgeführt wird
    }

    @BeforeEach
    void setUp() throws Exception {
        // Code, der vor jedem Testcase ausgeführt wird
    }
 
    @Test
    void einTestcase() {
        // Code, der einen Testcase abbildet
    }

    @Test
    void weitererTestcase() {
        // Code, der einen weiteren Testcase abbildet
    }

    @AfterEach
    void tearDown() throws Exception {
        // Code, der nach jedem Testcase ausgeführt wird
    }
 
    @AfterAll
    static void tearDownKlasse() throws Exception {
        // Code, der nach Ausführung des letzten Testcases ausgeführt wird
    }
}

JUnit-Erweiterungen

Eine Implementierung von JUnit für Jakarta EE ist Cactus (ehemals J2EEUnit) aus dem Jakarta-Projekt. Seit Java EE 5 haben sich sogenannte Out-of-container-Frameworks (zum Beispiel EJB3Unit) etabliert, die eine Ausführung von Tests außerhalb des Containers erlauben.

Erweiterungen zu JUnit erweitern JUnit für den Einsatz in bestimmten Bereichen (beispielsweise HTTPUnit für Webentwicklung, DBUnit für Datenbankentwicklung). Darüber hinaus gibt es noch Plugins für Entwicklungsumgebungen, die den Einsatz von JUnit innerhalb der Entwicklungsumgebung ermöglichen beziehungsweise erweitern (beispielsweise Infinitest für kontinuierliches Testen oder DJUnit für Berechnung der Code-Abdeckung, englisch Code Coverage, der Tests).

Versionsgeschichte

JUnit 5
JUnit setzt sich nun aus mehreren verschiedenen Modulen aus drei verschiedenen Unterprojekten zusammen.
JUnit 5 = JUnit Platform + JUnit Jupiter + JUnit Vintage[4]
JUnit 4.0
In dieser Version wurde die Package-Struktur verändert. Alle Klassen finden sich nun in org.junit.*. Die Klassen aus Version 3.x sind ebenfalls enthalten, sie sind weiterhin unter junit.framework.* zu finden.[5]
JUnit 4.5
Support für das assertThat assert statement mit Hilfe des Hamcrest frameworks.[6]
JUnit 4.8
Tests können nun mit Kategorien markiert werden. Dadurch ist es möglich, nur Tests einer bestimmten Kategorie auszuführen.[7]
JUnit 4.9
ClassRule Annotation zur Definition von Regeln für Unit-Test-Klassen.[8]
JUnit 4.10
RuleChain zur Anordnung von Regeln, TemporaryFolder zur Anlage und Verwendung temporärer Dateien und Verzeichnisse.[9]
JUnit 4.11
FixMethodOrder zur sortierten Ausführung der Testmethoden.[10]

Siehe auch

Literatur

  • Johannes Link: Softwaretests mit JUnit – Techniken der testgetriebenen Entwicklung. 2., überarb. und erw. Auflage. dpunkt-Verlag, Heidelberg 2005, ISBN 3-89864-325-5
  • Frank Westphal: Testgetriebene Entwicklung mit JUnit und FIT. dpunkt, 2005, ISBN 3-89864-220-8 (frankwestphal.de [PDF; 2,8 MB]). 

Weblinks

Einzelnachweise

  1. Release 6.1.0. 19. Mai 2026 (abgerufen am 20. Mai 2026).
  2. Mike Clark: JUnit FAQ. What’s the difference between a failure and an error? 28. Dezember 2004, archiviert vom Original (nicht mehr online verfügbar) am 30. Dezember 2004; abgerufen am 25. Oktober 2010 (englisch, Gilt für JUnit 3. Könnte sich geändert haben!): „Assertions are used to check for the possibility of failures, therefore failures are anticipated. Errors are unanticipated problems resulting in uncaught exceptions being propagated from a JUnit test method.“
  3. Writing Tests. Abgerufen am 24. Dezember 2023.
  4. Stefan Bechtold, Sam Brannen, Johannes Link, Matthias Merdes, Marc Philipp, Juliette de Rancourt, Christian Stein: JUnit 5 User Guide. 21. März 2020, abgerufen am 29. Juli 2020 (englisch).
  5. Frank Westphal: JUnit 4.0
  6. JUnit release notes
  7. Release Notes zu JUnit 4.8
  8. JUnit 4.9 released
  9. JUnit 4.10 released
  10. JUnit 4.11 is released
Wikipedia

Dieser Text basiert auf dem Artikel Junit aus der freien Enzyklopädie Wikipedia und steht unter der Lizenz Creative Commons CC-BY-SA 3.0 Unported. Eine Liste der Autoren ist in der Wikipedia verfügbar.

JUnit auf jobtic.com

Monitoring

Experten finden

jobtic.com verbindet IT-Freiberufler, Selbstständige, Consultants, Projektanbieter, IT-Dienstleister und Unternehmen in einer zentralen IT-Projektbörse für den deutschsprachigen Markt. Die Plattform unterstützt die Suche nach JUnit Freelancern, JUnit Projekten, Contracting-Einsätzen, Remote-Projekten, IT-Jobs, Interim-Rollen, technischen Experten und spezialisierten Beratern.

Chancen entdecken

Freelancer profitieren von einer professionellen Präsentation ihrer Expertise im Bereich JUnit und erhalten Zugriff auf aktuelle Projektangebote, Projektanfragen und neue Karrierechancen im IT-Freelancer-Markt. Durch moderne Such- und Filterfunktionen lassen sich passende Projekte, Auftraggeber, Recruiter und Kontakte schnell identifizieren.

Wissen einordnen

Neben der Projekt- und Expertenplattform bietet jobtic.com umfangreiche Informationen, Hintergründe und Wiki-Inhalte rund um JUnit. Dazu gehören Grundlagen, Definitionen, Einsatzbereiche, Entwicklungen, Versionen, Methoden, technische Zusammenhänge, Best Practices und aktuelle Marktinformationen zu JUnit.

Vernetzung stärken

Unsere jobtic-Übersicht zu JUnit kombiniert Wissensdatenbank, Projektbörse, Freelancer-Verzeichnis, Experten-Suche und Projektmarkt in einer zentralen Plattform. Besucher finden hier sowohl Informationen zu JUnit als auch passende Freelancer, Berater, Entwickler, Consultants, Administratoren, Support-Spezialisten und aktuelle IT-Projekte mit Bezug zu JUnit.

Kontakte aufbauen

jobtic.com unterstützt Freelancer und Unternehmen dabei, schneller passende Projekte, Experten und Geschäftskontakte im Bereich JUnit zu finden. Egal ob Projektakquise, Expertenvermittlung, Freelancer-Suche, Contracting, IT-Consulting oder spezialisierte Projektbesetzung - jobtic.com bietet die passende Plattform für den modernen IT-Projektmarkt.

Zentral vernetzen

Wer nach JUnit Freelancern, JUnit Experten, JUnit Projekten, JUnit Beratern, JUnit Consulting, JUnit Contracting, JUnit Projektbörse, JUnit Freelancer-Profilen oder aktuellen Entwicklungen rund um JUnit sucht, findet auf jobtic.com eine zentrale Anlaufstelle für Wissen, Projekte und professionelle Vernetzung im IT-Umfeld.

Passende Projekte zu JUnit

Mehr Projekte

Projekte veröffentlichen

Unternehmen können Projekte mit Anforderungen, Laufzeiten, Technologien, Einsatzorten, Remote-Anteilen, Budgetrahmen und Projektbeschreibungen veröffentlichen. Gleichzeitig ermöglicht jobtic.com die gezielte Suche nach verfügbaren JUnit Spezialisten mit passenden Erfahrungen, Branchenkenntnissen und technischen Fähigkeiten.