Blog

Alle Beiträge mit dem Tag Testing

DevSecOps – der neue heiße Scheiß?

Bei DevOps geht es nicht nur um Entwicklungs- und Betriebsteams. Wenn Sie die Agilität und Reaktionsfähigkeit eines DevOps-Ansatzes voll ausschöpfen wollen, muss die IT-Sicherheit auch eine integrierte Rolle im gesamten Lebenszyklus Ihrer Anwendungen spielen.
Warum? In der Vergangenheit wurde die Rolle der Sicherheit in der Endphase der Entwicklung auf ein bestimmtes Team beschränkt. Das war nicht so problematisch, wenn die Entwicklungszyklen Monate oder gar Jahre dauerten, aber diese Tage sind vorbei. Effective DevOps gewährleistet schnelle und häufige Entwicklungszyklen (bisweilen Wochen oder Tage), aber veraltete Sicherheitspraktiken können selbst die effizientesten DevOps-Initiativen rückgängig machen.
weiterlesen

Sanduhr

Angular-Komponententests – Zeit und Nerven sparen

Komponententests in Angular sind teuer und nehmen viel Zeit in Anspruch. Deshalb sollten die Testmodule so sparsam wie möglich aufgebaut sein. Durch die Erfahrungen in mehreren Projekten haben wir viele hilfreiche Tipps in Bezug auf Angular-Komponententests gesammelt und konnten so eine Zeitersparnis von insgesamt 90% erreichen. Diese Tipps und Erfahrungen möchten wir in diesem Beitrag gern mit euch teilen. So könnt ihr zukünftig nicht nur viel Zeit, sondern auch viele Nerven sparen.

weiterlesen

Software Craftsmanship – Das Manifest für Entwickler?

„Wenn man mit Stolz Software entwickelt, seinen Job liebt und stetig besser werden will, eine Karriere mit Autonomie, einem Zweck und hervorragenden Leistungen verfolgt, dann beginnt man am besten mit der Erkenntnis, dass man ein Software Craftsman ist“. Dieser Satz stammt aus dem Ende 2014 erschienenen Buch „The Software Craftsman“ von Sandro Mancuso. Hinter diesem Statement steckt die Idee, dass Entwickler entgegen einer landläufigen Meinung keine Coding Monkeys sind, sondern ein Handwerk ausüben. Die Software Craftsmanship-Bewegung hat ihren Ursprung in den Neunzigerjahren und brachte ihre Werte auch in das Agile Manifesto ein. Die Agile Softwareentwicklung fokussierte sich jedoch aus der Sicht vieler schon bald zu sehr auf Prozesse und Vorgehensweisen (Scrum) und vernachlässigte handwerkliches Können (eXtreme Programming). Dies führte letztlich im 2009 zu einem eigenen Manifest für „Software Craftsmanship“, obwohl die „Handwerkskunst“ den agilen Werten und Prinzipien eigentlich nicht widerspricht.
weiterlesen

DMN mit FitNesse in IntelliJ testen

Mit der Decision Model and Notation — kurz DMN — gibt es einen hervorragenden Standard, Geschäftsregeln in Form von ausführbaren Entscheidungstabellen oder Entscheidungsbäumen zu modellieren. Camunda beispielsweise bietet dazu einen kostenlosen und intuitiv bedienbaren Modeler und kann DMN-Tabellen in seiner Engine ausführen. Für UnitTests kann mit einer DmnEngineRule eine schlanke DmnEngine-In-Memory hochgefahren werden, so dass auf der Ebene ohne viel Aufwand getestet werden kann. Gängige Assertions-Frameworks wie AssertJ können für die Überprüfung der Ergebnisse genutzt werden.

Aber das reicht nicht aus. Niemand möchte ernsthaft alle Möglichkeiten, die bei einem Test einer komplexen Entscheidungstabelle getestet werden müssen, in einem JUnit-Test erfassen. Ferner besteht die häufige Anforderung, dass Regeln (auch und besonders) durch den Fachbereich geändert werden können, wobei Tests der Regelwerke erforderlich sind. JUnit ist toll für Entwickler, aber der Fachbereich kann damit nichts anfangen. Und da kommt eine alte Perle ins Spiel: FitNesse.

weiterlesen