Die letzten Verbesserungen im ModuleStudio-Tooling

in  Zikula Apps , , ,

Die letzten Verbesserungen im ModuleStudio-Tooling

Mit den meisten ModuleStudio-Versionen werden nicht nur Korrekturen und Verbesserungen im Generator, sondern auch kleinere Veränderungen für die Editoren vorgenommen. Dieser Beitrag stellt zwei spezifische Neuerungen im Detail vor.

Verbesserte Fehlertoleranz verzeiht falsche Änderungen

In ModuleStudio 1.3.0 wurde beispielsweise dafür gesorgt, dass invalide Änderungen im textuellen Editor - egal ob unabhängig vom graphischen Editor oder eingebettet im Diagramm - dazu führen, dass das komplette Diagramm gelöscht wird.

Wie im Handbuch gezeigt, werden nicht (mehr) erkannte semantische Elemente im Diagramm markiert, was besagt, dass sie beim nächsten Speichern verschwinden würden.

Automatisierte Tests - ein Zwischenstand

in  Builds & Tests , , ,

Automatisierte Tests - ein Zwischenstand

Seit dem kürzlich angekündigten Start der Testautomatisierung von ModuleStudio ist bereits eine Menge geschehen. So gibt es knapp 1.000 Tests für die DSL, darunter vorwiegend für UI-unabhängige Komponenten, wie den Parser, den Serialisierer, den Formattierer und die Validierungsregeln. Hier haben wir eine Testabdeckung von etwa 95% erreicht und konnten einige Fehler in der Validierungsschicht beheben.

Auch der Generator wird bereits mit einer Abdeckung von über 90% getestet. Hier ging es bislang allerdings vorwiegend darum, möglichst viele Varianzen zu durchlaufen, um zum Beispiel Null Pointer Exceptions zu verhindern. Weitere Tests für einzelne inhaltliche Aspekte werden dann nach und nach auf der Basis von spezifischen Bug Reports ergänzt.

Ran an die Tests!

in  Builds & Tests , ,

Ran an die Tests!

Schon ewig geplant, aber lange schmählich vernachlässigt, habe ich bei ModuleStudio die automatisierten Tests. Zwar ist schon seit Längerem die Infrastruktur dahingehend ausgerichtet, was beispielsweise die Git-Struktur und die Jenkins-Pipelines anbelangt, allerdings bringt das relativ wenig, wenn es fast nur Dummy-Tests ohne jeglichen Inhalt gibt.

Da ModuleStudio 1.1.0 kürzlich veröffentlicht wurde, konnten danach in der Entwicklungsversion 1.2.0 einige Altlasten entfernt werden. Da hat es sich im Hinblick auf Timing und Ausgangslage angeboten, endlich zu starten.

Schönere Property Views in MOST 0.7

in  Verschiedenes ,

Schönere Property Views in MOST 0.7

In ModuleStudio 0.7 wird es eine neue Ansicht für die Eigenschaften von Modellelementen geben. Statt der bisherigen Tabellenansicht ist die neue View eher wie ein Formular aufgebaut und ermöglicht damit eine übersichtlichere Darstellung.

Die neue Ansicht sieht nicht nur schöner aus, sondern erlaubt auch mehr Funktionalität innerhalb der Eigenschaften, wie zum Beispiel die Anzeige von Validierungsfehlern direkt beim jeweiligen Eingabefeld.

Aktuell werden die Formulare noch nach einem Standardverfahren automatisch für die Eigenschaften erstellt. Einzelne Anpassungen, wie zum Beispiel eine Gruppierung der Eigenschaften in unterschiedliche Sektionen oder die Anpassung der Darstellung einzelner Felder, werden nicht mehr für 0.7, sondern in einer späteren Version umgesetzt. Die alte Tabellenansicht wird zusätzlich verfügbar sein, bis die neue Darstellung komplett ausgereift ist.

Worum geht es in diesem Entwickler-Blog?

in  Verschiedenes , , ,

Worum geht es in diesem Entwickler-Blog?

Dieser Blog wird hauptsächlich über die Anpassung von Modulen für das Zikula-Framework berichten. Dabei werden zahlreiche Technologien verwendet, unter anderem Symfony, Twig, Doctrine, Bootstrap und jQuery. Eine Besonderheit ist, dass die Zikula-Module auf modellgetriebenem Wege realisiert werden.

Modellieren – generieren – anpassen

Meistens wird es in diesem Blog um Zikula-Module gehen, die mit dem MDSD-Werkzeug ModuleStudio modelliert und generiert wurden. Manchmal werden kleinere Tipps und Tricks vorgestellt, manchmal vielleicht etwas längere Tutorials und HowTos, die zeigen, wie wir bestimmte Anforderungen umgesetzt haben. Auch von der Entwicklung des ModuleStudio-Generators werde ich berichten.