Domänenspezifische Sprache für Tests von REST-Schnittstellen

Eine domänenspezifische Sprache, kurz DSL, ist eine auf ein bestimmtes Problemfeld abgestimmte Sprache. Mit dem freien REST Assured existiert eine solche Sprache für den effektiven Test von REST-Schnittstellen. Genutzt wird REST Assured hauptsächlich unter Java und Groovy. Eine einfache Überprüfung des Statuscodes einer API-Anfrage würde in REST Assured wie folgt aussehen:

given().get("api.example.com").then().assertThat().statusCode(200);

Daneben sind auch komplexe Tests wie die Auswertung von zurückgegebenen JSON-Strukturen und Daten, sowie die Verknüpfung unterschiedlicher Bedingungen ohne Probleme zu implementieren. Eine große Übersicht über die Möglichkeiten von REST Assured bietet der Usage-Guide des Projektes.

rest-assured.io

Die Projektseite von REST Assured ist unter rest-assured.io zu finden. Der unter der Apache Lizenz (Version 2.0) lizenzierte Quellcode kann auf GitHub gefunden werden.

WADL-Dateien validieren

Bei WADL handelt es sich um die Web Application Description Language – eine Sprache mit der hauptsächlich REST-Services beschrieben werden. Auch wenn WADL in den letzten Jahren nicht mehr wirklich zum heißen Eisen gehört, wird es dennoch ab und an genutzt.

Ein WADL-Beispiel von Oracle.

Ein WADL-Beispiel von Oracle.

Möchte man eine solche WADL validieren, so kann man diese mit einem XML-Validator gegen das WADL-Schema validieren. Möglich ist dies z.B. mit folgendem Online-XML-Validator. Nachdem die zu überprüfende WADL im Validator eingetragen wurde, gibt man die URL:

https://www.w3.org/Submission/wadl/wadl.xsd

als Schema-URL an. Anschließend kann die XML-Datei gegen das XSD-Schema validiert werden.

SoundHelix

Musik per Algorithmus zu erzeugen klingt im ersten Moment abwegig, allerdings gibt es einige Personen und Projekte welche sich genau damit beschäftigen. Eines dieser Projekte ist dabei SoundHelix. Bei dieser in Java geschriebenen Anwendung handelt es sich um ein System mit welchem Musik algorithmisch erzeugt werden kann. Die erzeugte Musikstücke klingen dabei durchaus angenehm. Konfiguriert wird das System und deren Musik über eine XML-Datei.

soundhelix.com

soundhelix.com

Lizenziert ist SoundHelix unter der GPL und damit freie Software. Der Quelltext kann auf SourceForge bezogen werden. Zu finden ist das Projekt auf der offiziellen Seite unter soundhelix.com. Es ist dabei unter Linux, Mac OS X und Windows lauffähig.