Verspotte nicht, was du nicht besitzt: Ein besserer Weg, Drittanbieter-Abhängigkeiten zu testen

2025-06-18
Verspotte nicht, was du nicht besitzt: Ein besserer Weg, Drittanbieter-Abhängigkeiten zu testen

Dieser Artikel befasst sich mit einem häufigen Problem beim Unit-Testing: dem Umgang mit Drittanbieter-Abhängigkeiten. Anhand eines Docker-Repository-Clients zeigt der Autor die Nachteile der direkten Mockung von Drittanbieter-Abhängigkeiten (wie HTTP-Clients): Tests werden komplex, brüchig und schwer verständlich. Die vorgeschlagene Lösung besteht darin, eine dünne Abstraktionsschicht einzuführen, um die Geschäftslogik von externen Abhängigkeiten zu entkoppeln, wodurch Tests vereinfacht und die Lesbarkeit und Wartbarkeit des Codes verbessert werden. Dieser Ansatz führt nicht nur zu saubereren und prägnanteren Tests, sondern verbessert auch die Lesbarkeit und Wartbarkeit der Geschäftslogik selbst. Obwohl Ausnahmen anerkannt werden, kommt der Autor zu dem Schluss, dass dieses Prinzip in den meisten Fällen dazu beiträgt, elegantere und leichter zu wartende Tests zu schreiben.

Mehr lesen

Design-Druck: Die unsichtbare Hand, die Ihren Code formt

2025-05-25
Design-Druck: Die unsichtbare Hand, die Ihren Code formt

Hattest du schon einmal dieses komische Gefühl, dass etwas in deinem Code nicht stimmt, aber du konntest nicht sagen, was? Hynek Schlawacks Vortrag auf der PyCon US 2025 untersucht den „Design-Druck“, die unsichtbare Kraft, die deine Architektur formt. Er befasst sich mit Themen wie Kopplungstypen, attraktiven Fallen im Software-Design und typgesteuertem Design und hebt Kompromisse bei der Datenzuordnung und Typzustands-Mustern hervor. Der Vortrag untersucht auch kritisch die Auswirkungen von ORMs und asynchronen Primitiven auf die Codekomplexität.

Mehr lesen