Suche
Es werde Licht!

Eclipse Photon: Zweiter Meilenstein bringt Unterstützung für JUnit 5

Dominik Mohilo

© Shutterstock.com / leungchopan

Mars, Neon, Oxygen – und nun Eclipse Photon. Kaum ist das diesjährige Simultaneous Release abgeschlossen, arbeiten die Entwickler der Eclipse IDE schon unter Hochdruck an der nächsten Version, Eclipse Photon (4.8). Der zweite Meilenstein hat einige Verbesserungen der Optik und der User Experience an Bord, wichtigstes Feature ist allerdings die Unterstützung von JUnit 5.

Was 2018 wohl für uns in petto hat, das kann keiner vorhersehen. Eine Sache ist aber mehr als wahrscheinlich: Das Simultaneous Release von Eclipse im Sommer des kommenden Jahres. Die Entwicklungsumgebung erreicht damit Version 4.8, Namenspate waren diesmal die Photonen. Vielleicht ist das ja ein besonderes Omen, immerhin bewegen sich die Partikel mit Lichtgeschwindigkeit. Hoffentlich kein negatives Omen ist die Tatsache, dass es sich bei Eclipse Photon um das 13. Simultaneous Release handeln wird. Doch bedenkt man die Pünktlichkeit und die Kontinuität, mit der die neuen Eclipse-Versionen jedes Jahr herausgegeben werden, schreckt die vermeintliche Unglückszahl „13“ nur wenig.

In unserer Interview-Reihe zum kürzlich veröffentlichten Eclipse Oxygen haben wir Leiter verschiedener Eclipse-Projekte auch gefragt, was für Eclipse 4.8 geplant ist:

Eclipse Photon (4.8) M2

Plattform

Im Fokus stand im zweiten Meilenstein von Eclipse Photon nicht die Plattform, dennoch gibt es ein paar wichtige Verbesserungen, die es in das aktuelle Release geschafft haben. In den Einstellungen, welche Dateien mit gewissen Content Types verküpft werden sollen, können nun auch ? sowie * als sogenannte Wildcards eingesetzt werden – und das an jeder Stelle des Musters eingesetzt werden (bspw. *-conf.json).

In Sachen optische Verbesserung der Nutzbarkeit können sich erneut die Mac-Nutzer der Eclipse-Plattform freuen. Ab dem zweiten Meilenstein von Eclipse Photon kann die Hintergrundfarbe von Buttons individuell gestaltet werden. Die Performance des Textcursors wurde im GTK3-Port des SWTs verbessert, sodass es nun nicht mehr zu Rucklern kommen sollte und der Cursor in gleichmäßiger Geschwindigkeit blinkt.

Farblich angepasste Buttons auf dem Mac / Quelle: Eclipse Foundation

Java Development Tools

Am 10. September war es endlich so weit: Das Testing Framework JUnit 5 wurde offiziell veröffentlicht. In Eclipse Photon wird die Unterstützung für JUnit 5 in den JDT nativ enthalten sein, für die Unterstützung in Eclipse Oxygen wird man im Marketplace fündig. Erstellt man in Eclipse Photon einen JUnit Test Case mit dem neuen JUnit Test Case Wizard, ist es bereits beim Erstellen möglich, diesen als JUnit Jupiter test zu definieren.

Der neue JUnit Test Case Wizard schlägt automatisch vor die JUnit-5-Bibliothek zum Build Path hinzuzufügen und beim Hinzufügen einer Library über das Java-Build-Path-Fenster kann die Version dieser ausgewählt werden. Auch neu sind die beiden Templates test_jupiter, mit dem eine JUnit-Jupiter-Testmethode erstellt werden kann, und test_factory, mit dem eine @TestFactory-Methode erstellt wird.

Der neue JUnit Test Case Wizard / Quelle: Eclipse Foundation

Standardmäßig sind nun auch die Klassen Assertions, Assumptions, DynamicContainer und DynamicTest Teil der Eclipse Favoriten. Dies erlaubt es Nutzern, statische Methoden dieser Klassen schnell via Content Assist (STRG + Space) bzw. Quick Fox (STRG + 1) zu importieren.

Die JUnit-Ansicht in Eclipse erlaubt die Nutzung zahlreicher neuer Funktionen quasi nativ, so kann man sich in ihr etwa sämtliche Fehlermeldungen gruppierter Assertions im Vergleichsfenster der Resultate anzeigen lassen. Beim Mouseover wird in der JUnit-Ansicht auch die Anzahl an deaktivierten Tests und Tests mit sogenannten Assumption Failures angezeigt.

Testergebnisse vergleichen in Eclipse Photon / Quelle: Eclipse Foundation

Wichtig: In einem Setup, in dem ein alter Eclipse Build, der keine Unterstützung für JUnit 5 hat, einen neuen Eclipse Build mit JUnit 5 Support als Ziel verwendet, wird das Testen nicht unterstützt.

Vom JUnit 5 Support abgesehen, wurde die Lesbarkeit für das Java Syntax Coloring im Dark Theme verbessert. Die Verwendung von Fettungen wurde dafür reduziert und einige Farben, die sich zu ähnlich waren, wurden geändert. Das Resultat sieht durchaus ansehnlich aus.

Das neue Java Syntax Coloring / Quelle: Eclipse Foundation

Plug-in Development Environment & Platform Developers

Der Target-Definition-Editor wurde um einen neuen Tab erweitert. Der Tab Source enthält den Target-Definition-Editor des erweiterungsbasierten Texteditors. Dieser ist gleichläufig mit den anderen Tabs und Änderungen sollten automatisch übernommen werden. Plattformentwickler können sich, wie oben bereits erwähnt, über die individuell gestaltbaren Buttons für Mac freuen; dies geht über den Befehl Button.setBackground().

Auch wichtig ist, dass die Interfaces der Listener im SWT erweitert wurden und nun statische Hilfsmethoden zur Verfügung stellen, die wiederum Lambdas als Listener akzeptieren. Diese Methoden sind Alternativen für die Nutzung von Adapterklassen:

  • org.eclipse.swt.events.ControlListener
  • org.eclipse.swt.events.ExpandListener
  • org.eclipse.swt.events.MenuListener
  • org.eclipse.swt.events.TreeListener
  • org.eclipse.swt.events.MouseTrackListener
  • org.eclipse.swt.events.ShellListener
  • org.eclipse.swt.custom.ControlListener
  • org.eclipse.swt.browser.LocationListener
  • org.eclipse.swt.browser.ProgressListener
  • org.eclipse.swt.browser.VisibilityWindowListener

Plattformentwickler, die transparente Farben vermisst haben, können aufatmen: Im GTK3-Port des Standard Widget Toolkits werden diese ab Eclipse Photon M2 unterstützt. Zu guter Letzt gab es für die CSS-Engine ein Upgrade auf Batik 1.9, das nun an Stelle von Batik 1.8 verwendet wird.

Weitere Informationen zum ersten Milestone von Eclipse Photon gibt es als News and Noteworthy auf der Seite der Eclipse Foundation. Heruntergeladen werden kann Eclipse 4.8 M1 auf der Download-Seite.



Eclipse Photon (4.8) M1

Plattform

Die Usability ist laut Lars Vogel also erneut ein wichtiger Faktor, wenn nicht sogar der wichtigste. Der erste Meilenstein von Eclipse Photon zeigt dies ebenfalls deutlich, sind doch gleich zwei der drei neuen Features reine Verbesserungen im Bereich Nutzerfreundlichkeit. Unter anderem werden nun im Dialog Open Resource die Buchstaben bzw. Wörter hervorgehoben, die mit dem Filter übereinstimmen. So kann man gleich sehen, ob das Suchergebnis zu dem passt, was man hatte finden wollen.

Das Highlighting im Open-Resource-Dialog / Quelle: Eclipse Foundation

Während das obige Feature für alle Nutzer der Eclipse IDE interessant ist, ist eine weitere Verbesserung der Usability ausschließlich für Nutzer des macOS interessant. Bislang war „Monaco“ die Schriftart der Wahl für die Mac-Version von Eclipse bzw. den Text-Editoren der Entwicklungsumgebung. Die Schriftart ist gut lesbar, allerdings hat sie den entscheidenden Nachteil, dass man sie nicht „fetten“ kann. Da viele Code-Editoren allerdings gewisse Schlüsselworte fettgedruckt darstellen, wurde es Zeit, die Schriftart zu wechseln.

Unter Mac wird in Eclipse Photon von Beginn an „Menlo“ als Standardschriftart verwendet, die diesen Nachteil ausgleicht und die Lesbarkeit beim Arbeiten mit Quelltext deutlich verbessern soll – immerhin ist das Lesen des Source Codes eine der Hauptaufgaben des Entwicklers beim Programmieren.

Vorher-Nachher-Vergleich der beiden Fonts Monaco (links) und Menlo (rechts) / Quelle: Eclipse Foundation

Das dritte und letzte Feature, das die Plattform-Entwickler für den ersten Meilenstein umgesetzt haben, ist die Erweiterung des Menüs für die Einstellungen der Content Types. Hier kann man ab sofort die Zuordnungen von Datei-Arten mit dem entsprechenden Editor einsehen, einstellen und entfernen.

Platform Developers

Für Plattform-Entwickler gibt es im ersten Meilenstein von Eclipse Photon ebenfalls drei Neuerungen. Die erste ist erneut ausschließlich für Mac-User interessant: Man kann nun endlich auch auf einem Apple-Rechner Text.setBackground(Color) nutzen, um die Hintergrundfarbe eines Text-Widgets zu definieren. Das funktionierte unter Windows und GTK bereits.

Wer XULRunner als Rendering Engine für den Browser den Vorzug gibt, der muss stark sein: Eclipse/SWT unterstützt es nicht mehr – auf keiner Plattform. Dafür hat der Generic Editor nun zwei neue Extension Points, um eine Auto-Edit-Strategie (org.eclipse.jface.text.IAutoEditStrategy) bzw. einen Reconciler (org.eclipse.jfache.text.reconciler.IReconciler) hinzuzufügen. Auto-Edit-Strategien sind für Syntaxregeln interessant, also etwa für das automatische Hinzufügen von Einrückungen oder das automatische Schließen von Klammern. Reconciler werden hingegen für das sogenannte Code Folding oder Spell Checker genutzt.

Lesen Sie auch unser aktuelles Interview mit Mike Milinkovich zum Oxygen-Release

Weitere Informationen zum ersten Milestone von Eclipse Photon gibt es als News and Noteworthy auf der Seite der Eclipse Foundation. Heruntergeladen werden kann Eclipse 4.8 M1 auf der Download-Seite.

Verwandte Themen:

Geschrieben von
Dominik Mohilo
Dominik Mohilo
Dominik Mohilo studierte Germanistik und Soziologie an der Goethe-Universität in Frankfurt. Seit 2015 ist er Redakteur bei S&S-Media.
Kommentare

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht.