adesso BLOG

Softwareentwicklung

11.05.2023 von Björn Thalheim

ATDD on Spring Boot with Cucumber

Bild Björn Thalheim

Developers know unit tests fairly well, even more integrative approaches like @SpringBootTest. But many lack a clear design/development/test strategy and stick to their favorite programming language. Acceptance Test Driven Design (ATDD) is a structured approach to design your tests and program outside in, keeping the focus on the larger function blocks instead of individual classes (e.g. test behavior, not classes). This approach may benefit from abstracting the acceptance tests to a non-programming language like cucumber, allowing even non-programmers to write test scenarios which will eventually be executed automatically. This article demonstrates this with a small testcase and a fully functional, little Spring Boot/Java project.

weiterlesen
Softwareentwicklung

Das Problem ist nahezu jedem Frontend Entwickler bekannt: Ein simpler Unit-Test wird durch die Implementierungsdetails unglaublich komplex. Dies bringt einige Nachteile mit sich, weshalb Angular seit Version 9 Component Harness zur Verfügung stellt.

weiterlesen
Softwareentwicklung

Software ist überall. So enthalten beispielsweise Embedded Geräte eine Menge Software. Leider werden Fehler oft erst entdeckt werden, wenn die Software in Betrieb ist. Um dies zu vermeiden, empfehlen wir Ihnen eine FOTA-First-Mentalität (Firmware Over-the-Air).

weiterlesen
Softwareentwicklung

22.03.2023 von Vincent Scherb

Troubleshooting open source NuGet package

Bild Vincent Scherb

For a project I decided to use the libgit2 library which, fortunately, has a port to C#. When adding the NuGet package in the latest version 0.26.2 (release December 11, 2019) the program ran into a problem at runtime as the shared library cannot be loaded.

weiterlesen
Softwareentwicklung

Python ist eine hochentwickelte, universelle Programmiersprache, die in verschiedenen Bereichen wie Data Science, maschinellem Lernen, Webentwicklung und Automatisierung weit verbreitet ist. Die Einfachheit der Syntax und die leichte Erlernbarkeit machen Python zu einer idealen Sprache für Anfängerinnen und Anfänger sowie für erfahrene Developer. In diesem Blog-Beitrag werde ich die Anwendungsgebiete sowie die Eigenschaften der Sprache beleuchten und einen Ausblick auf die Zukunft geben.

weiterlesen
Softwareentwicklung

Softwareversionierung ist ein praktisches Mittel, um den aktuellen Entwicklungsstand festzuhalten. Jedoch werden Softwareversionen oft nur inkrementiert und bringen dadurch keinen Mehrwert. Weil Versionierung in Regeln wiedergegeben werden kann, sollten wir diesen Prozess automatisieren. Semantische Versionierung gibt Softwareversionen eine Struktur, die allen Stakeholdern und dem Entwicklungsteam wichtige Informationen liefern kann.

weiterlesen
Softwareentwicklung

28.02.2023 von Rico Komenda

Die bösen regulären Ausdrücke

Bild Rico  Komenda

In diesem Blogpost gehen wir auf reguläre Ausdrücke (Regex) und deren Schattenseiten ein. Dabei sehen wir uns speziell an, wie ein Regex einen Denial-of-Service-Angriff auslösen kann.

weiterlesen
Softwareentwicklung

13.02.2023 von Christoph Kappel

Orchestrierung mit Nomad

Bild Christoph  Kappel

Orchestrierung ist in aller Munde und aus vielen Bereichen gar nicht mehr wegzudenken - doch gibt es neben dem Platzhirschen Kubernetes eigentlich Alternativen? Im Zuge dieses Artikels beschäftigen wir uns mit dem Job Scheduler Nomad aus dem Hause HashiCorp und sehen uns anhand von einfachen Beispielen an, welche Möglichkeiten hier geboten werden. Anschließend beschäftigen wir uns mit Deployments und fortgeschritteneren Themen wie Service Discovery und Canary Deployments.

weiterlesen

Diese Seite speichern. Diese Seite entfernen.