← Neueste Arbeiten
💻 computer science

Scaling Mobile Chaos Testing with AI-Driven Test Execution

Dieses Paper präsentiert ein KI-gesteuertes mobiles Chaos-Testing-System, das LLM-basierte Testausführung mit Fault Injection auf Service-Ebene integriert, um die Resilienz im großen Maßstab automatisch zu validieren, wobei erfolgreich kritische Architekturrisiken identifiziert und die Debugging-Zeit über Ubers mobile Anwendungen hinweg reduziert wurde.

Ursprüngliche Autoren: Juan Marcano, Ashish Samant, Kai Song, Lingchao Chen, Kaelan Mikowicz, Tim Smyth, Mengdie Zhang, Ali Zamani, Arturo Bravo Rovirosa, Sowjanya Puligadda, Srikanth Prodduturi, Mayank Bansal

Veröffentlicht 2026-07-21
📖 5 Min. Lesezeit🧠 Tiefgang

Ursprüngliche Autoren: Juan Marcano, Ashish Samant, Kai Song, Lingchao Chen, Kaelan Mikowicz, Tim Smyth, Mengdie Zhang, Ali Zamani, Arturo Bravo Rovirosa, Sowjanya Puligadda, Srikanth Prodduturi, Mayank Bansal

Originalarbeit lizenziert unter CC BY 4.0 (http://creativecommons.org/licenses/by/4.0/). Dies ist eine KI-generierte Erklärung des untenstehenden Papers. Sie wurde nicht von den Autoren verfasst oder gebilligt. Für technische Genauigkeit konsultieren Sie das Originalpaper. Vollständigen Haftungsausschluss lesen

Stellen Sie sich das Internet als eine riesige, geschäftige Stadt vor, in der Millionen von winzigen digitalen Boten (Apps) herumrennen und Nachrichten, Essen oder Fahrten ausliefern. Hinter den Kulissen verlassen sich diese Boten auf ein massives, unsichtbares Netz aus Diensten – wie Kraftwerke, Ampeln und Lagerhäuser –, um alles reibungslos am Laufen zu halten. Manchmal geht eines dieser unsichtbaren Teile kaputt oder wird langsam. Dies wird als „Ausfall“ bezeichnet. In der Welt des Software-Engineerings gibt es eine Praxis namens Chaos Engineering, was im Grunde die Kunst ist, absichtlich Dinge kaputt zu machen, um zu sehen, ob das System überleben kann. Es ist wie eine Feuerübung für ein Gebäude, aber anstatt eines Feuers simuliert man einen Stromausfall, um zu sehen, ob die Notlichter funktionieren.

Das Testen von mobilen Apps (den Apps auf Ihrem Telefon) ist jedoch knifflig. Im Gegensatz zu einer einfachen Website muss eine Telefon-App mit Tausenden von verschiedenen Städten, Sprachen und Nutzergewohnheiten zurechtkommen. Wenn man versuchen würde, jede mögliche Art und Weise zu testen, wie die App kaputtgehen könnte, in jeder einzelnen Stadt, müsste man Millionen von Testskripten schreiben. Es ist, als würde man versuchen, jede einzelne Tür in einer Stadt von der Größe New Yorks zu prüfen, um zu sehen, ob sie richtig schließt; das ist für Menschen manuell unmöglich. Dieses Paper geht sich dieses unmögliche mathematische Problem durch den Einsatz von Künstlicher Intelligenz (KI) entgegen, anstatt Menschen zum Testen einzusetzen.

Die Forscher bei Uber, einem Unternehmen, das Fahrgäste mit Fahrern verbindet und Menschen mit Essen versorgt, haben ein System gebaut, das zwei mächtige Werkzeuge kombiniert. Das erste Werkzeug ist ein KI-Roboter namens DragonCrawl. Betrachten Sie DragonCrawl als einen superintelligenten, neugierigen Teenager, der einen Telefonbildschirm betrachten kann, versteht, was er sieht (wie „Oh, das ist ein Button, um eine Pizza zu bestellen“), und herausfindet, was er als Nächstes klicken muss, ohne dass ein Mensch für jeden einzelnen Button eine spezifische Anweisung schreiben muss. Das zweite Werkzeug ist uHavoc, ein System, das wie ein kontrollierter Saboteur agiert. Es bricht absichtlich Teile des Backends (das unsichtbare Netz aus Diensten) auf, um zu testen, wie die Telefon-App darauf reagiert.

Normalerweise arbeiteten diese beiden Werkzeuge getrennt: DragonCrawl testete, ob die App funktioniert, wenn alles perfekt ist, und uHavoc testete, ob die Server einen Absturz bewältigen können. Die Forscher erkannten jedoch, dass sie, wenn sie sie kombinierten, eine „Chaos-Testing“-Maschine erschaffen könnten, die automatisch läuft. Sie ließen DragonCrawl durch die App navigieren, während uHavoc gleichzeitig im Hintergrund Dinge kaputt machte. Das Ziel war es zu sehen, ob die App weiter funktionieren kann (wie das Bestellen einer Fahrt), selbst wenn die Backend-Dienste einen schlechten Tag haben.

Das Paper erklärt, wie sie dieses System gebaut haben und was passierte, als sie es einschalmierten. Sie haben nicht nur geraten; sie ließen das System über 180.000 Mal laufen, beginnend im ersten Quartal 2024. Sie testeten 47 kritische Abläufe (wie das Buchen einer Fahrt oder das Bestellen von Essen) über die Uber Rider, Driver und Eats Apps hinweg. Die Ergebnisse waren beeindruckend. Das KI-gesteuerte System fand 23 schwerwiegende Probleme, die Menschen übersehen hatten. Die meisten davon waren Fälle, in denen der Ausfall eines kleinen, unwichtigen Dienstes dazu führte, dass eine große, wichtige Funktion (wie das Bezahlen einer Fahrt) abstürzte. Tatsächlich hätten zwei der gefundenen Probleme dazu geführt, dass die App komplett einfriert und abstürzt, was etwas ist, das man nur durch Tests auf einem echten Telefon erfassen kann.

Einer der coolsten Teile ihrer Entdeckung ist, wie sie das „Schuldzuweisungs-Spiel“ gelöst haben. Wenn ein Test fehlschlug, dauerte es früher Stunden, bis erfahrene Ingenieure herausfinden konnten, welcher defekte Dienst dazu führte, dass die Telefon-App so reagierte. Ihr neues System nutzt KI, um die Beweise zu analysieren und den Übeltäter zu erraten. Es lag in 88 % der Fälle richtig, wenn es nach den Top-fünf-Vermutungen suchte. Dies verkürzte die Zeit, die zur Behebung von Problemen benötigt wurde, von Stunden auf Minuten.

Das Paper hebt auch hervor, dass dies nicht nur eine Theorie war. Sie haben bewiesen, dass es in der realen Welt funktioniert, ohne echte Kunden zu beeinträchtigen. Sie fanden heraus, dass die KI unglaublich zuverlässig war und 99 % der Tests bestand, selbst wenn im Hintergrund Dinge kaputt gingen. Das bedeutet, dass das System robust genug ist, um jede Nacht zu laufen und ständig zu prüfen, ob die App bereit für Katastrophen ist. Die Autoren argumentieren, dass dieser Ansatz das „kombinatorische Explosionsproblem“ löst – die Idee, dass die Anzahl der benötigten Tests so schnell wächst, dass sie unmöglich zu bewältigen ist. Durch die Nutzung von KI, die sich in Echtzeit an den Bildschirm anpasst, mussten sie nicht Millionen von Testskripten schreiben; die KI hat es einfach während des Vorgangs selbst herausgefunden.

Das Paper merkt jedoch vorsichtig an, was dieses System nicht kann. Es kann keine Dinge testen wie das Durchtrennen von Internetkabeln oder Ausfälle in Diensten, die Uber nicht kontrolliert (wie ein Drittanbieter für Karten). Es setzt zudem voraus, dass das Unternehmen seine Dienste ordnungsgemäß etikettiert und nachverfolgt hat, was viel Arbeit erfordert, um es zuerst einzurichten. Aber für die Probleme, die es doch löst, deutet das Paper darauf an, dass dies ein massiver Sprung nach vorn ist. Es verwandelt mobiles Chaos-Testing von einem seltenen, teuren, manuellen Ereignis in eine routinemäßige, automatisierte Sicherheitsprüfung, die jeden Abend stattfindet und sicherstellt, dass die App bereit für alles ist, was das Internet ihr entgegenwerfen mag, wenn Sie auf Ihrem Telefon auf „Bestellen“ tippen.

Ertrinken Sie in Arbeiten in Ihrem Fachgebiet?

Erhalten Sie tägliche Digests der neuesten Arbeiten passend zu Ihren Forschungsbegriffen — mit technischen Zusammenfassungen, in Ihrer Sprache.

Digest testen →