Connect with us

Künstliche Intelligenz

Das Nullable-Entwurfsmuster – stressfrei testen ohne Mocks


close notice

This article is also available in
English.

It was translated with technical assistance and editorially reviewed before publication.

Robuste, automatisierte Tests sind feste Bestandteile der agilen Softwareentwicklung. Da Anforderungen und Rahmenbedingungen sich stetig ändern, müssen Entwicklerinnen und Entwickler kontinuierlich in der Lage sein, ihre Architektur anzupassen. Ihr Code muss wachsen und sich weiterentwickeln können. Sie müssen laufend bestehende Features erweitern, anpassen, umsortieren, zusammenführen oder aufteilen. Dazu benötigen sie die Unterstützung einer schnellen, verlässlichen und robusten Testsuite, die bestehende Funktionen der Software nicht beeinträchtigt.




Martin Grandrath ist Software-Developer und entwickelt seit über 15 Jahren Applikationen mit Web-Technologien. Seine Schwerpunkte sind neben Frontend-Architektur vor allem Software-Craftsmanship und testgetriebene Entwicklung. Seit 2023 arbeitet er als Senior IT-Consultant bei codecentric.

Auf Mocks basierende Tests verursachen häufig zusätzlichen Pflegeaufwand beim Refaktorieren, also Änderungen an der Codestruktur, die die Arbeit mit dem Code insgesamt vereinfachen, das Verhalten des Systems aber nicht verändern. Die Art und Weise, wie Mocks in der Praxis meist zum Einsatz kommen, führt zu einer Kopplung von Tests und Implementierungsdetails. Änderungen an diesen Details erfordern Anpassungen der Tests, was zulasten der Entwicklungsgeschwindigkeit geht.

Dieser Artikel zeigt auf, welche Kompromisse mit auf Mocks basierenden Tests verbunden sind und stellt mit dem Nullable-Entwurfsmuster von James Shore eine Alternative vor.

Mock-Objekte oder kurz Mocks (englisch für „Attrappe“) sind eine Unterkategorie der Test-Doubles, die in Unit Tests als Platzhalter für Produktionsobjekte dienen. Der Begriff Test-Double ist angelehnt an das Stunt-Double in Filmen. Weitere Arten von Test-Doubles sind Stubs, Spies oder Fakes.

Mocks zeichnen während eines Testlaufs auf, wie die Software mit ihnen interagiert: Welche ihrer Methoden ruft die Anwendung in welcher Reihenfolge und mit welchen Argumenten auf? Anschließend verifiziert der Unit-Test, ob die beobachteten Interaktionen mit den erwarteten übereinstimmen. Auf diese Weise werden die Interaktionen zwischen den Objekten zu einem integralen Bestandteil der Implementierung und der Tests. Diese Art von Tests wird als Interaction-based bezeichnet.

Gleichzeitig isolieren Mocks das zu testende Objekt von seinen Abhängigkeiten. Während des Tests wird also nur der Code eines einzelnen Objekts ausgeführt, während alle Interaktionspartner durch Mocks ersetzt werden. Tests, die Objekte in Isolation testen, nennt man solitary.

Auch wenn Solitary Interaction-based Tests ihre Vorzüge haben und sich im Laufe der Zeit zum Standard entwickelt haben, sind sie nicht frei von Nachteilen. Dass Tests an die Interaktionen zwischen Objekten gekoppelt sind, erschwert Refaktorierungen. Diese sind jedoch ein unverzichtbares Werkzeug, um die Qualität der Codebasis dauerhaft aufrechtzuerhalten.

Refaktorierungen, die die Interaktionen zwischen Objekten verändern, können zu False Positives führen: Tests schlagen fehl, obwohl das Programm als Ganzes keine Fehler enthält. Lediglich die Objektinteraktionen weichen von den Erwartungen der Tests ab. Eine Suite aus Interaction-based Tests macht die Codebasis dadurch insgesamt weniger flexibel, da die Tests die Implementierungsdetails fixieren.

Zudem kann es vorkommen, dass Solitary Tests Fehler nicht erkennen, wenn zwar alle Objekte in Isolation erwartungsgemäß arbeiten, es aber im Zusammenspiel der Objekte zu unerwünschtem Verhalten kommt. Um dem vorzubeugen, sind neben den Unit Tests zusätzliche Integrationstests erforderlich, die gezielt das Zusammenspiel mehrerer Objekte testen.

Eine Alternative stellen Sociable, State-based Tests dar.

In Sociable Tests interagiert das zu testende Objekt nicht mit Test-Doubles, sondern mit den echten Abhängigkeiten, die auch im Produktivbetrieb existieren. Fehler, die durch die Interaktion zwischen den Objekten entstehen, fallen im Test sofort auf. Separate Integrationstests sind nicht erforderlich.

State-based Tests verifizieren das sichtbare Verhalten von Objekten und ignorieren die darunter liegenden Interaktionen. Diese Tests reagieren daher sehr viel robuster gegenüber Refactorings, da sie sich nur für das Endergebnis interessieren und nicht für die Implementierungsdetails.

Die echten Produktionsobjekte in den Tests zu verwenden, statt sie durch Mocks zu ersetzen, führt zunächst zu einem Problem: Der zu testende Code muss mit APIs, Datenbanken oder dem Dateisystem kommunizieren. Diese Nebenwirkungen (Side Effects) würden zu nicht deterministischen Tests führen, da sie vom globalen Zustand abhängig sind, unter anderem von Drittsystemen. So könnte etwa ein Test fehlschlagen, weil eine Fremd-API mit anderen Daten antwortet, als es der Test erwartet.

Ein weiteres Problem sind die Auswirkungen, die API-Aufrufe haben können. Dass jede Ausführung der Warenkorbtests eine Kreditkarte belastet, ist nicht wünschenswert. Darüber hinaus muss es möglich sein, zu testen, wie sich ein Programm verhält, wenn eine Dritt-API mit unterschiedlichen Formaten, mit Fehlern oder gar nicht antwortet. Und schließlich verlangsamt die API-Anbindung die Tests.

Integrationstests sind zwar für den Übergang des zu implementierenden Systems mit der Außenwelt notwendig, aber die Nebenwirkungen sind für die Tests innerhalb des Systems unerwünscht.



Source link

Künstliche Intelligenz

Von-der-Leyen-Flug: Litauen warnt EU vor massiven GPS-Störungen


close notice

This article is also available in
English.

It was translated with technical assistance and editorially reviewed before publication.

Der Vorfall um das Flugzeug von EU-Kommissionspräsidentin Ursula von der Leyen (CDU), bei dem unter anderem über Bulgarien das GPS-Signal gestört worden sein soll, rückt eine bereits bekannte Bedrohung stärker in den Fokus: Offensichtlich russische Störmanöver im Bereich der Satellitennavigation. Für Litauen und andere Staaten vor allem im Baltikum, die an Russland angrenzen, sind solche Angriffe längst keine Seltenheit mehr. Sie stellen Regierungsvertretern zufolge eine tägliche Realität und Teil einer systematischen, hybriden Kriegsführung dar.

Der litauische Außenminister Kęstutis Budrys hat die Begebenheit als klare Illustration der Bedrohung bezeichnet. Er betont laut Politico, dass es sich nicht um Einzelfälle, sondern um gezielte, andauernde Aktionen handele. Diese gefährdeten nicht nur den zivilen Luft-, See- und Landverkehr, sondern auch kritische Infrastrukturen. Er wirft Russland vor, damit gegen seine internationalen Verpflichtungen zu verstoßen.

Obwohl die genauen Umstände der Ereignisse um von der Leyens Flugzeug von den Behörden in Sofia und Brüssel aktuell widersprüchlich dargestellt werden, ist die Botschaft aus Litauen eindeutig: Die GPS-Störungen sind Teil einer langfristigen Strategie Russlands. Der litauische EU-Botschafter Nerijus Aleksiejūnas hebt hervor, dass die Anrainerländer schon seit Jahren damit zu kämpfen haben.

Die Auswirkungen sind weitreichend und betreffen unterschiedlichste Bereiche des täglichen Lebens. So gab es Berichte, dass große Schiffe aus Sicherheitsgründen die Einfahrt in den Hafen von Klaipėda verweigerten, nachdem ihre GPS-Signale manipuliert wurden. Piloten stehen unter Stress, weshalb die litauischen Behörden verstärkt Schulungen für Landungen unter solchen Bedingungen anbieten. Selbst Landwirte beklagen wirtschaftliche Verluste, da die Störungen ihre GPS-gestützten Geräte, etwa für Entwässerungssysteme, beeinträchtigen.

Die litauische Kommunikationsregulierungsbehörde RRT dokumentierte allein im August mehr als 1000 litauische Flugzeuge und 33 Schiffe, die von Navigationssignalstörungen betroffen waren.

Die Lage spitzt sich dem Bericht nach zu. Die Nachbarländer befürchten eine weitere Eskalation. Aleksiejūnas weist darauf hin, dass Russland verstärkt in diese Aktivitäten investiere. Die Daten der RRT zeigten eine alarmierende Zunahme auch von Spoofing-Quellen aus der russischen Exklave Kaliningrad. Während es im Februar noch drei davon gegeben habe, seien es im August bereits 29 gewesen. Diese hätten eine beträchtliche Reichweite von bis zu 400 Kilometern und könnten theoretisch auch Regionen wie Berlin und Brandenburg treffen.

Diese Entwicklung macht GPS-Jamming, bei dem das Funksignal der Satelliten gestört wird, und Spoofing zu einem gesamt-europäischen Problem. Bei Letzterem werden zuvor aufgezeichnete echte oder falsche Satellitensignale von einem Dritten ausgesendet. Litauische Offizielle warnen, dass Russland Technologien entwickelt, die bald voraussichtlich weit über das Baltikum hinaus eingesetzt würden.

Mit Unterstützung anderer Mitgliedstaaten hat Litauen die Problematik bereits im Juni auf die EU-Agenda gesetzt, um eine kollektive Antwort zu fordern. Nötig seien Maßnahmen wie eine verbesserte Überwachung, gezielte Schulungen und Investitionen in widerstandsfähige Technologien, heißt es. Zusätzlich sollen diplomatische Bemühungen unternommen werden, um Russland zur Einhaltung des Völkerrechts zu zwingen. Budrys drängt auch auf die Verhängung strenger Sanktionen und die Einleitung internationaler Schritte durch die Internationale Fernmeldeunion (ITU).

Für die spätestens seit Ende 2023 beklagten massiven Störungen von Systemen für die Satellitennavigation sind auf der östlichen Ostsee fahrende Schiffe in der Region zumindest mitverantwortlich. Das legt eine Studie polnischer Forscher nahe. Als Ursache machten sie vor allem Jamming aus. Anderen Erkenntnissen zufolge befindet sich etwa eine als „Baltic Jammer“ bezeichnete Störanlage im früheren Königsberg, die vor allem auf den Flugverkehr ausgerichtet ist.

Das Portal Flightradar24 verweist darauf, dass der bulgarische Vorfall noch untersucht werden müsse. Von der Leyens Flugzeug, das am 30. August von Helsinki über einen estnischen Luftwaffenstützpunkt nach Warschau unterwegs gewesen sei, habe aber nachweislich schon auf dieser Strecke über dem Südwesten Estlands auf Höhe des Rigaischen Meerbusens mit GPS-Störungen zu kämpfen gehabt. Diese seien erst aus der Analyse der ursprünglichen ADS-B-Daten (Automatic Dependent Surveillance – Broadcast) erkennbar geworden.


(nie)



Source link

Weiterlesen

Künstliche Intelligenz

Valerion stellt Laser-Projektor mit 3500 Lumen vor


close notice

This article is also available in
English.

It was translated with technical assistance and editorially reviewed before publication.

Trotz einer drögen Vorstellung im Rahmen der IFA ist ein Merkmal des Triple-Laser-Projektors von Valerion dann doch bemerkenswert: Das Objektiv des VisionMaster Max lässt sich wechseln, um zusammen mit Lens-Shift und optischem Zoom für eine noch größere Flexibilität bei der Wahl des Aufstellungsortes zu sorgen. Das native Projektionsverhältnis von 0,9 bis 1,5:1 lässt sich per Aufsatzlinse bis auf 2,0:1 erweitern; das reicht für kleinere Räume ebenso wie für sehr große Projektionsabstände. Das Gerät hatte auf Kickstarter über 10 Millionen US-Dollar eingespielt.

Auch die restlichen Eckdaten können sich sehen lassen. Der 4K-Projektor mit 3840 × 2160 Bildpunkten soll per NoirScene einen Dynamikumfang von 50000:1 erreichen. Den beeindruckenden Kontrast erzielt das System mit einer dynamischen Blende, Streulichtschutz und verbessertem Schwarzwert (Enhanced Black Level, EBL). Am hell ausgeleuchteten Messestand ließ sich das erwartungsgemäß nicht überprüfen. Als maximalen Lichtstrom nennt Valerion 3500 Lumen.

Der gefürchtete Regenbogen-Effekt von DLP-Beamern fiel uns dort nicht übermäßig auf. Ob es an dem vom Hersteller genannten Anti-Rainbow-Effect lag, wird ein späterer Test beweisen müssen.

Unter der Haube liefert der Laser-Projektor dank Google TV diverse Streamingdienste, darunter Netflix, Prime Video und Disney+. Überdies unterstützt der VisionMaster Max die HDR-Formate Dolby Vision, HDR10+, HDR10, HLG und IMAX Enhanced nebst DTS:X Immersive Audio.



Die aus 14 Elementen bestehende Optik des Valerion VisionMaster Max.

(Bild: Ansgar Kossowski / heise medien)

Valerion sieht seinen Projektor auch im Gaming-Bereich gut aufgestellt. Mit dem niedrigen Input Lag von vier Millisekunden bei 1080p und 240 Hertz sollen selbst Hardcore-Gamer zufriedengestellt werden. Davon, dass der Projektor die Variable Refresh Rate (VRR) beherrscht, wie beispielsweise die neuen XGIMI-Projektoren der Horizon-20-Serie, war aber keine Rede. Wir gehen nicht davon aus.

Für rund 5000 Euro ist der VisionMaster Max ab sofort bei Händlern vorbestellbar, darunter auch auf der Seite des Herstellers.


(aki)



Source link

Weiterlesen

Künstliche Intelligenz

Vorstellung Mercedes GLC EQ: Konservativ zum Erfolg?


close notice

This article is also available in
English.

It was translated with technical assistance and editorially reviewed before publication.

Beginnen wir die Vorstellung des GLC EQ brutal – mit einem Rückblick. Die bisherigen Versuche von Mercedes, mit Elektroautos global zu reüssieren, sind mit „wenig erfolgreich“ geradezu euphorisch beschönigend umschrieben. EQC und EQE SUV waren technisch keineswegs schlechte Autos, den Geschmack der Kunden trafen sie offenkundig aber nicht. Nun wagt Mercedes mit dem GLC EQ einen Neuanfang, der technisch an der Spitze mitspielen soll und gleichzeitig klassische Werte, die der Marke zugeschrieben werden, vermitteln möchte. Das E-SUV steht damit vor großen Aufgaben.

Der GLC EQ beerbt den seit 2022 gebauten GLC mit Verbrenner nicht, sondern ergänzt das Angebot. Die auf einer Plattform basierende C-Klasse und der GLC werden im kommenden Jahr überarbeitet und nicht etwa eingestellt. Statt einer sehr glatt-förmigen Front bekommt der elektrische GLC einen wuchtigen Grill verpasst. Das Gesicht der Marke sei „neu definiert“ worden, indem man eines der „ikonischsten Designelemente der Automobilgeschichte neu interpretiert und bewahrt“ habe, meint Gorden Wagener, Chief Design Officer Mercedes. Nun, dazu werden die Ansichten sicher auseinandergehen. Wie bei einem der Hauptkonkurrenten, dem neuen BMW iX3, sind auch beim GLC EQ die Rückleuchten schneller gewachsen, als die Ästhetik mithalten konnte – das ist freilich nur eine persönlich gefärbte Sicht auf die Dinge.


Mercedes GLC EQ

Mercedes GLC EQ

Die Rückleuchten sind recht wuchtig geraten.

(Bild: Mercedes)

Gegenüber dem GLC mit Verbrenner wächst das E-SUV, und zwar dort, wo der Kunde etwas davon hat: zwischen den Achsen. Acht Zentimeter legt er dort zu und misst damit 2,97 m. Das sollte für fürstliche Platzverhältnisse genügen. Der Kofferraum fasst 570 bis 1740 Liter, was ungefähr dem entspricht, was ein rund 20 cm kürzerer Skoda Enyaq auch fasst. Hinzu kommt ein Fach unter der vorderen Haube mit 128 Litern. Eine Maximierung des Platzangebots stand im Lastenheft des Mercedes also nicht an erster Stelle, doch Grund zum Klagen wird man kaum haben. Die Anhängelast liegt bei 2,4 Tonnen, auch das dürfte viele Ansprüche abdecken.


Mercedes GLC EQ

Mercedes GLC EQ

Dieses Werksbild ist kein Zufall, sondern wurde bewusste in die erste Auswahl an freigegebenen Fotos gesteckt. Kommuniziert werden soll: Der GLC EQ kann bis zu 2,4 Tonnen an den Haken nehmen.

(Bild: Mercedes)

Die ersten Bilder des Innenraums zeigen nur eine von zahlreichen Gestaltungsmöglichkeiten, die bis zu einer veganen Auskleidung reichen. Der fast einen Meter breite Bildschirm wird eine Sonderausstattung, Bilder von Grundausstattung gibt es noch nicht. Ohne Aufpreis dabei ist ein Glasdach, das gegen Zuzahlung um ein paar bunte LEDs erweitert werden kann. Eine elektrochemische Verschattung ist immer dabei: Liegt eine Spannung an, richten sich Kristalle so aus, dass das Dach transparent wird. Öffnen lässt es sich, unabhängig davon, nicht. Ob es da alle in der Zielgruppe tröstet, dass LEDs und Verschattung auch per Sprachbefehl bedient werden können und das System eine „rolloartige, rund sechs Sekunden lange Inszenierung“ (O-Ton-Mercedes) aufführen kann?


Mercedes GLC EQ

Mercedes GLC EQ

Ein Glasdach ist serienmäßig, ein mit LEDs illuminierter Sternenhimmel aufpreispflichtig.

(Bild: Mercedes)

Zurück sind jedenfalls Wippe und Walze auf dem Lenkrad, auf vielfachen Wunsch von Kunden, wie Mercedes schreibt. Komplett verabschiedet hat sich die Marke von Wischflächen auf dem Steuer allerdings noch nicht, wobei genau das nach einigen Erfahrungen, die wir mit Testwagen gemacht haben, eine ausgezeichnete Idee gewesen wäre. Denn die winzigen Touchflächen nervten nachhaltig.

Das sind freilich Petitessen, denn überzeugen soll GLC EQ selbstverständlich mit anderen Werten. Auf dem Papier bleibt er dabei hinter dem, was BMW im iX3 auffährt, etwas zurück. Die 94 kWh netto dürften allerdings ebenfalls viele Interessenten zufriedenstellen. Die maximale Ladeleistung liegt bei 330 kW und das Fenster zwischen 10 und 80 Prozent soll in 22 Minuten gefüllt sein. Daraus ergibt sich in diesem Bereich eine durchschnittliche Nettoladeleistung von 179 kW. Verglichen mit den bisherigen Elektroautos der Marke ist das ein hervorragender Wert, markenübergreifend allerdings kann der GLC EQ mit den derzeit besten Elektroautos nicht ganz mithalten.

Die Reichweite im WLTP gibt Mercedes mit 571 bis 713 km an. 70 Prozent davon wären also rund 400 bis 500 km Reichweite. Nehmen wir für ein gedankliches Experiment den niedrigen Wert und starten mit voller Batterie, die wir bis auf 10 Prozent runterfahren und anschließend auf 80 Prozent wieder aufladen, um ein Ziel mit 10 Prozent Restladung zu erreichen. Dann sind mit einer Pause von 22 Minuten mehr als 900 km möglich. Verfahren hat man dann netto etwa 150 kWh, zu denen die Ladeverluste noch hinzugezählt werden müssen. Zu einer hohen Effizienz soll ein Zweigang-Getriebe beitragen. Der erste Gang ist mit 11:1 sehr kurz übersetzt, der zweite mit 5:1 deutlich länger. Im WLTP verspricht Mercedes Werte zwischen 14,9 und 18,8 kWh/100 km.

Zum Start der Baureihe wird zunächst nur das stärkste Modell zu haben sein. Mit einer Systemleistung von 360 kW beschleunigt der GLC EQ 400 4Matic in 4,3 Sekunden aus dem Stand auf 100 km/h und erreicht in der Spitze 210 km/h. Interessant ist, dass Mercedes sowohl vorn als auch hinten auf permanenterregte Synchronmaschinen (PSM) setzt. Viele Hersteller nutzen diese Bauform nur für die primäre Antriebsachse und schalten einen Asynchronmotor im Bedarfsfall an der sekundären Achse dazu. Im kommenden Jahr wird Mercedes weitere Ausführungen nachreichen, darunter auch Modelle mit Hinterradantrieb.


Mercedes GLC EQ Front

Mercedes GLC EQ Front

Mercedes war bestrebt, das klassische Design wieder stärker zu betonen, wenngleich ein E-Auto einen Kühlergrill in der hier angedeuteten Größe nicht mehr nötig hat.

(Bild: Mercedes)

Dreistufig aufgebaut ist das Angebot an Assistenten. In Europa ist gegen Aufpreis assistiertes Fahren auf Level 2 möglich. Der GLC EQ unterstützt den Fahrer, der hier stets allein in der Verantwortung bleibt, also beim Spur- und Abstandhalten. Später soll es einen erweiterten Spurwechsel-Assistenten geben, der auch im Stadtverkehr funktioniert. Vorerst nur in China und den USA kann der Kunde ein „nahtloses und sicheres Point-to-Point-Fahrerlebnis“ (Mercedes) buchen. Der Hersteller schreibt es nicht explizit, doch damit dürfte Level 3 gemeint sein. Das würde bedeuten: Der GLC EQ könnte in mindestens einem exakt definierten Szenario selbstständig fahren, sofern der Fahrer bereit ist, innerhalb von ein paar Sekunden einzugreifen.


Mercedes GLC EQ Cockpit

Mercedes GLC EQ Cockpit

Diese breite Displayfront wird nur gegen Aufpreis eingebaut.

(Bild: Mercedes)

Noch steht nicht genau fest, ab wann der GLC EQ bei den Händlern stehen wird – Mercedes bleibt in diesem Punkt vage und spricht vom ersten Halbjahr 2026. Auch einen Preis mag der Konzern noch nicht nennen. Nicht mehr als eine grobe Orientierung mögen interne und externe Konkurrenten aufzeigen. Ein Mercedes GLC mit Plug-in-Hybrid (Test) und der BMW iX3 kosten rund 69.000 Euro. Der GLC EQ wird sich in diesem Umfeld einfinden müssen, und Ausführungen mit Heckantrieb und weniger Leistung dementsprechend darunter. Damit lässt sich zweierlei absehen: Für den GLC mit Verbrenner wird es finanziell deutlich ungemütlicher. Und das EQE SUV (Test), das ähnlich voluminös wie der neue GLC EQ ist, dürfte binnen Jahresfrist vom Markt verschwinden. Denn auf dem Papier ist der Neue in allen wesentlichen Belangen überlegen, und in der Praxis dürfte dies kaum anders sein.

Mehr zur Marke Mercedes


(mfz)



Source link

Weiterlesen

Beliebt