Gurken-Test mit Cucumber

Mit Cucumber können Testfälle schön in Worte beschrieben werden. Hier mal ein schneller quick Einstieg.

Eine Testfall Beschreibung kann in Worten mit der Gherkin Syntax geschehen, z.B diese kalender.feature:

In Eclipse sind die JUnit-Test auch schön lesbar, z.B.:

Für Eclipse gibt es ein Natural 0.7.6 Plug-In für die *.feature Dateien. Das kann leicht über den Eclipse Marketplace installiert werden:

Einfach alles installieren:

Die Testfall implementierung kann z.B. so aussehen. Dieser Testfall gibt nur einen Kalender auf der Konsole aus, deshalb gibt es nur das Generieren:

Eine Testklasse zum starten des Testfalls:

Folgende Abhängigkeiten werden in der pom.xml benötigt:

Das ganze Testprojekt kann auf Github geladen werden.

Eine weitergehende Anleitung auf deutsch gibt es hier.

Warum läuft die OSGI-Konsole in neueren Versionen nicht mehr so wie früher?

In älteren OSGI Versionen konnte die Konsole einfach über einen Aufruf:

gestartet werden. In neueren Versionen läuft es nicht mehr. D.h. es gibt noch nicht einmal eine Fehlermeldung.

Die neue Konsole ist nun Teil von der Apache Felix Gogo shell. Ab dem Eclipse Release 4.4 (Luna) ist die Built-in OSGi-Konsole komplett von dem Equinox Framework entfernt worden. „Warum läuft die OSGI-Konsole in neueren Versionen nicht mehr so wie früher?“ weiterlesen

Java News zu der am 22.06.2016 veröffentlichten Eclipse Neon 4.6 Version

Hier eine schöne Aufzählung der Neuerungen der neuen Eclipse Neon Version.

Bildschirmfoto 2016-06-29 um 21.39.14

Bildschirmfoto 2016-06-29 um 21.38.42

Cool:

Content Assist now supports substring patterns. Enter any part of the desired proposal’s text, and Content Assist will find it! For example, completing on selection proposes all results containing selection as a substring.

The Refactor > Rename popup now shows an Options… link which opens the full Rename dialog that provides more options like renaming a field’s getter and setter methods.

You can now select multiple elements in views like Package Explorer and Outline and then search for References, Declarations, Implementors, and Read/Write Access (where applicable):

Papyrus 1.1.3 UML 2.0 Designer läuft auch unter Eclipse Mars.1

Die UML 2.5 Umgebung Papyrus läuft auch unter Eclipse Mars.1 und bietet u.a. folgende Diagramme:

  • Class Diagram
  • Object Diagram
  • Package Diagram
  • Composite Structure Diagram
  • Component Diagram
  • Deployment Diagram
  • Profile Diagram
  • Use case Diagram
  • Activity Diagram
  • State machine Diagram
  • Communication Diagram
  • Sequence Diagram
  • Timing Diagram
  • Interaction overview Diagram

Die Installation läuft „Papyrus 1.1.3 UML 2.0 Designer läuft auch unter Eclipse Mars.1“ weiterlesen

UML Designer 5.0 für Eclipse Mars.1 installieren

Für die aktuelle Eclipse Mars.1 Version

eclipse mars.1gibt es einen kostenlosen UML 2.5 Designer. Mit ihm können ua. folgende Diagramme modelliert werden, wie auf der Homepage zu sehen:

  • Package Hierarchy Diagram
  • Class Diagram
  • Component Diagram
  • Composite Structure Diagram
  • Deployment Diagram
  • Use Case Diagram
  • Activity Diagram
  • State Machine Diagram
  • Sequence Diagram
  • Profile Diagram

„UML Designer 5.0 für Eclipse Mars.1 installieren“ weiterlesen

Eclipse PlugIn SortIt zum schnellen sortieren nach Länge, Buchstaben oder Nummern

Sortierung von Text ist doch hin und wieder mal nötig. Das Eclipse Plugin SortIt ist zwar schon älter, läuft aber immer noch mit der aktuellen Eclipse Mars 4.5.0 Version. Es kann wie alle anderen Plugins installiert werden.
Cooles Plugin
Die Updateseite die unter dem Menü: Help->Install new Software eingetragen werden muss lautet:

Dann durch den Installationsvorgang gehen:

SortIt „Eclipse PlugIn SortIt zum schnellen sortieren nach Länge, Buchstaben oder Nummern“ weiterlesen

Ecore & EMF: Wie kann eine bidirektional Verbindung in Eclipse zwischen zwei Klassen im ecore-Model modelliert werden?

Hier am Beispiel von einem Arzt und einer Adresse. Wenn nun von der Adresse auf den Arzt und umgekehrt navigiert werden soll, kann die bidirektionale Verbindung im Feld EOpposite wie folgt eingetragen werden (rechts auf den Pfeil der Combobox klicken):

opposite
„Ecore & EMF: Wie kann eine bidirektional Verbindung in Eclipse zwischen zwei Klassen im ecore-Model modelliert werden?“ weiterlesen

Ecore: Wie kann ein Java Attribut für die Hibernate Suche im Ecore Modell annotiert werden?

Wie kann in einer Java Klasse ein Attribut für die Hibernate-Suche wie folgt annotiert werden?

Dazu folgende EAnnotation als Value mit den voll qualifizierter Namen einfügen, damit auch die imports aufgelöst werden können

ecore value

ecore annotation

Und für die Maven pom.xml, den folgenden Eintrag, damit die Hibernate Klassen auch gefunden werden können:

Eclipse go to Mars 4.5 Release oder wie wird Eclipse Mars auf dem Mac OS X installiert?

Heute ist die Mars 4.5 Version von Eclipse veröffentlich worden. Was gibt es neues?
Ok, dann mal auf die Mars Download Seite und das Programm laden. Ich war übrigens der 6,666 Download!

Für den Mac geht es jetzt super einfach.

Installation

Download des Eclipseeclipse-jee-mars-R-macosx-cocoa-x86_64.tar.gz oder andere gewünschte Version.
Dann einen doppelklick auf die Datei zum entpacken. Nun noch die Eclipse.app in das Programme Verzeichnis verschieben. Dann das Programm starten durch einen doppelklick auf Eclipse.app. Das geht gefühlt schneller als vorher!

Mehr ist für die installation auf einem Mac nun nicht mehr nötig. Hier die IDE, mit den Versions Dialog:
Eclipse Mars

Mars, das war’s. That’s it. Happy coding!

Wie kann ein BE-Model (ecore) mit Eclipse Modeling Framework (EMF) unter Eclipse Luna 4.4.2 und Texo generiert werden?

Für die meisten Java Projekte braucht man ein BE-Model, das am besten automatisch generiert wird. Wie kann das innerhalb von Eclipse Luna mit dem EMF durchgeführt werden?

Wir wollen diese Modell Stuktur erzeugen. Eine Mindmap hat 0-* Zweige:

BE

Zuerst Texo und EMF installieren.

Dann ein neues EMF Projekt anlegen über das Menü: File - New - Other:
EMF

Nun erstellen wir ein ecore Model über das Menü: File - New - Other - Eclipse Modeling Framework-Ecore Model:

model

So sieht das Projekt nun aus, mit der mindmap.ecore Model Datei:
eclipse ecor

Nun erzeugen wir zwei Klassen mit ein paar Attribute über New Child - New EClass über das Kontextmenü des Models (2.Zeile): „Wie kann ein BE-Model (ecore) mit Eclipse Modeling Framework (EMF) unter Eclipse Luna 4.4.2 und Texo generiert werden?“ weiterlesen

Wie kann eine MySQL Datenbank auf einem Mac OS X 10.10.3 (Yosemite) (Windows …) installiert werden, um mit Java von Eclipse (Java EE Luna 4.4.2) aus darauf zuzugreifen?

Wer eine MySQL Datenbank auf seinen Rechner installieren will, muss sich die Packages die zu installieren sind, auf der MySQL Homepage zusammen suchen.

Folgende drei Komponenten müssen für Mac OS X geladen und installiert werden (für Windows analog):

1. MySQL Community Server 5.6.24 von https://dev.mysql.com/downloads/mysql/

Für den Mac OS X 10.9 (x86, 64-bit), DMG Archive 5.6.24 167.6M mysql-5.6.24-osx10.9-x86_64.dmg. Installation.

2. MySQL Workbench 6.3.3
von http://dev.mysql.com/downloads/workbench/

mysql-workbench-community-6.3.3-osx-x86_64.dmg. Installation.

Die Workbench kann dann aus dem Programm Verzeichnis über das folgende Programm-Icon gestartet werden:
workbench

3. Connector/J 5.0.8 für Java für alle Betriebsysteme von https://dev.mysql.com/downloads/connector/j/5.0.html

Download mysql-connector-java-5.0.8.zip und z.B. in das Verzeichnis
/usr/local/mysql-5.6.24-osx10.8-x86_64/mysql-connector-java-5.0.8.jar kopieren.

Wenn alles installiert wurde, kann der DB Server über die Systemsteuerung mit dem MySQL Icon unten rechts gestartet werden:
mysql „Wie kann eine MySQL Datenbank auf einem Mac OS X 10.10.3 (Yosemite) (Windows …) installiert werden, um mit Java von Eclipse (Java EE Luna 4.4.2) aus darauf zuzugreifen?“ weiterlesen

Eclipse Plug-in: Wie können Resourcen von einem Plug-in in einem anderen Plug-in gelesen werden?

Manchmal möchte man die Resourcen wie Bilder oder Dateien aus einem anderen Eclipse Plug-in lesen. Also wie können Resourcen von einem Plug-in, in einem anderen Plug-in gelesen werden?

Siehe auch hier.

Wie kann der Plug-in Spy für UI Teile oder der Menü Syp auf dem Mac (Win) von Eclipse aufgerufen werden?

Wenn man in Eclipse sehen will, welche UI Komponenten gerade selektiert bzw. aktiv sind, kann der Plug-in Spy verwendet werden. Mit dem kann auch mit nur einen klick auf den Quellcode des jeweiligen aktiven Plug-ins zugegriffen werden. Wie kann der aber auf einem Mac aufgerufen werden (Vier Tasten gleichzeitig): fn+shift+alt+F1 (auf Windows Alt+Shift+F1)
Es erscheint dann solch ein PopUp-Dialog:
Eclipse Spy
und noch ein Beispiel:
Popup Spy

Analog dazu gibt es auch einen Spy für die Menüs, der wird mit fn+shift+alt+F2 (auf Windows Alt+Shift+F2) aufgerufen und dann ein Menüpunkt auswählen, es kommt dann z.B. dieser Dialog:
Menü Spy