Zum Inhalt springen

Ein bestandener Test sollte genau sagen, worauf er bestanden wurde

Revo Verify ist ein gemeinsamer Buchungstestplan für beide Seiten einer Verbindung. Jedes Ergebnis ist an den Adapter, den Mapping-Snapshot und die Konfiguration gebunden, mit denen es lief.

run_014 · Sandbox

Nicht bereit für die Freigabe

alpine-2.3.1 · snapshot v7 · config 12

  • CRED-001Zugangsdaten erreichen die SandboxBestanden
  • SRCH-0022 Erwachsene + Kind, 7 JahreBestanden
  • QUOTE-001Prüfung behält Aufenthaltsdaten beiBestanden
  • QUOTE-004Preis bei Prüfung geändertFehlgeschlagen
  • BOOK-001Erfasst die LieferantenreferenzBestanden
  • BOOK-003Zeitüberschreitung beim Verkäufer während der BuchungNicht eindeutig
  • BOOK-004Gleicher Idempotenzschlüssel zweimalNicht ausgeführt
Erwartet
price_changed: true
Tatsächlich
false, Gesamt 197,50 EUR statt 184,00 EUR

Von 7 gezeigten Fällen: 4 bestanden, 1 fehlgeschlagen, 1 nicht eindeutig, 1 nicht ausgeführt.Nicht eindeutig zählt nie als bestanden.

Beispielhaft. Unternehmen und Daten sind fiktiv.

Jedes Ergebnis ist an Adapter, Mapping-Snapshot und Konfiguration gebunden, gegen die es lief.

3
Versionen an jedes Ergebnis gebunden: Adapter, Snapshot und Konfiguration
0
nicht eindeutige Ergebnisse zählen als bestanden
Aus
externe Lasttests, standardmäßig

Der Bericht liest sich in Buchungsreihenfolge

Die Phasen reichen von den Zugangsdaten bis zur Fehlerbehandlung. Öffnen Sie einen Fehler, um zu sehen, was erwartet wurde, was zurückkam und wer ihn übernimmt.

Was jedes Ergebnis bedeutet

Bestanden
Jede erforderliche Assertion war in dieser Sandbox und bei diesen Versionen erfüllt. Die Produktion kann sich trotzdem anders verhalten.
Fehlgeschlagen
Eine Assertion lief, und die Antwort war falsch. Sie sehen beide Werte.
Nicht eindeutig
Das ließ sich nicht feststellen, meist weil die Umgebung oder der Verkäufer nicht geantwortet hat. Es gilt nie als bestanden.

Alpine Distribution → Corvane Travel

run_014 · sandbox
adapter alpine-2.3.1 · snapshot v7 · config 12

Nicht bereit zur Freigabe. 10 bestanden, 1 fehlgeschlagen, 1 nicht eindeutig, 3 nicht ausgeführt.

Zugangsdaten

  • CRED-001Zugangsdaten erreichen die SandboxBestanden
  • CRED-002Falsche Zugangsdaten führen zu einem AuthentifizierungsfehlerBestanden

Inhalte

  • CONT-001Jeder Unterkunftsdatensatz enthält seinen nativen CodeBestanden
  • CONT-002Codes werden über den Mapping-Snapshot v7 aufgelöstBestanden

Suche

  • SRCH-0022 Erwachsene + Kind (7 Jahre), Altersangaben bleiben in der AnfrageBestanden
  • SRCH-005Keine Verfügbarkeit liefert ein leeres ErgebnisBestanden

Angebot

  • QUOTE-001Die Angebotsprüfung behält Aufenthaltsdaten und Belegung beiBestanden
  • QUOTE-004Preis bei Angebotsprüfung geändertFehlgeschlagen
    Erwartet
    price_changed: true, wenn der Gesamtbetrag vom Angebot abweicht
    Tatsächlich
    price_changed: false, Gesamtbetrag 197.50 EUR gegenüber 184.00 EUR

    Nächster Schritt: Der Integrationsentwickler von Alpine prüft die Antwort der Angebotsprüfung und führt diese Phase dann erneut aus. Trace tr_9f27c1.

Buchung

  • BOOK-001Eine bestätigte Buchung erfasst die LieferantenreferenzBestanden
  • BOOK-003Timeout des Verkäufers mitten in der BuchungNicht eindeutig
    Erwartet
    Status bleibt UNKNOWN, kein zweiter Schreibvorgang gesendet
    Tatsächlich
    Sandbox nicht verfügbar, als der Lauf diesen Fall erreichte. Keine Buchungsantwort zum Prüfen

    Nächster Schritt: erneut ausführen, sobald die Sandbox wieder verfügbar ist. Dieser Fall blockiert die Freigabe weiterhin. Trace tr_a1d044.

  • BOOK-004Derselbe Idempotenzschlüssel zweimal ergibt eine BuchungNicht ausgeführt

Abruf und Stornierung

  • READ-001Buchung über die Lieferantenreferenz gefundenNicht ausgeführt
  • CANC-003Eine nicht erstattungsfähige Stornierung meldet die Gebühr aus den BedingungenNicht ausgeführt

Fehlerbehandlung

  • FAIL-002Eine Rate-Limit-Antwort verlangsamt Anfragen und respektiert das LimitBestanden
  • FAIL-006Keine Reisendendaten oder Secrets in gespeicherten BelegenBestanden

Beispielhaft. Unternehmen und Daten sind fiktiv.

Wodurch ein bestandenes Ergebnis veraltet

Ändert sich etwas, von dem ein Ergebnis abhing, zählt dieses Ergebnis nicht mehr. Der alte Lauf bleibt dokumentiert, und die Verbindung geht zurück in den erneuten Test.

run_011 · QUOTE-001

Bestanden auf Adapter alpine-2.3.1, Snapshot v6, Konfiguration 12

Snapshot v7 veröffentlicht

Das Ergebnis zählt nicht mehr. Es bleibt erfasst.

Die Verbindung geht zurück in die Tests und läuft erneut auf v7.

Beispielhaft. Unternehmen und Daten sind fiktiv.
Änderungen, die ein Testergebnis ungültig machen
Neue Adapter-VersionDannTests, die das geänderte Verhalten betreffen, müssen wiederholt werden
Neuer Mapping-SnapshotDannInhalts- und Buchungsablauftests müssen auf dem neuen Snapshot wiederholt werden
KonfigurationsrevisionDannErforderliche Tests für diese Einstellung müssen wiederholt werden
Zugangsdaten rotiertDannPrüfungen der Zugangsdaten und alle darauf aufbauenden Tests müssen wiederholt werden
Buchungslogik geändertDannDie Phasen Buchung, Abruf und Stornierung müssen wiederholt werden

Was es leistet

  1. Ordnet die Arbeit nach Phasen

    Neue Integrationsentwickler sehen die Checkliste in der Reihenfolge einer Buchung, mit dem letzten Ergebnis, dem Grund und dem nächsten Schritt je Fall.

  2. Zeigt Erwartetes und Tatsächliches

    Ein fehlgeschlagener Fall zeigt die Assertion, beide Werte und eine Trace-Referenz, wobei Reisendendaten und Zugangsdaten bereits entfernt sind.

  3. Testet die heiklen Pfade

    Preisänderung bei der Angebotsprüfung, Timeout des Verkäufers mitten in der Buchung, eine doppelte Anfrage, eine nicht erstattungsfähige Stornierung. Das sind die Fälle, die im Produktivbetrieb Geld kosten.

Traffic-Limits von Verkäufern sind harte Grenzen

Externe Lasttests sind standardmäßig deaktiviert. Zum Aktivieren braucht es eine schriftliche Genehmigung des Verkäufers, ein Anfragelimit, ein Parallelitätslimit, ein Zeitfenster und einen Notausschalter. Gegen unseren eigenen Simulator können Sie testen, ohne Traffic des Verkäufers zu berühren.

Externer Lasttest

Aus

Genehmigung des Verkäufers
Nicht hinterlegt
Limit und Zeitfenster
Nicht festgelegt
Notausschalter
Erforderlich
Beispielhaft. Unternehmen und Daten sind fiktiv.

Was es abdeckt und was nicht

Die Liste rechts ist bewusst so gewählt, und wir sagen Ihnen, wenn sich daran etwas ändert.

Enthalten

  • Zugangsdaten, Inhalte, Suche, Angebot, Buchung, Abruf und Stornierung in freigegebenen Sandboxes
  • Läufe, gebunden an Adapter, Mapping-Snapshot und Konfiguration
  • Vergleich von Erwartetem und Tatsächlichem mit geschwärzten Trace-Belegen
  • Fehlerbehandlung: Rate-Limits, Timeouts, unbekannter Buchungsstatus, doppelte Anfragen
  • Automatische Ungültigkeit, wenn sich eine gebundene Version ändert

Bewusst ausgelassen

  • Öffentliche Stresstests als Dienstleistung
  • Herunterladbare signierte Testberichte
  • Tests gegen produktive Buchungsabläufe
  • Testreihen über Hotels hinaus

Fragen, die wir auch stellen würden

Klare Antworten, auch wenn die Antwort Nein lautet.

Wenn alle Tests bestanden sind, funktionieren dann Buchungen im Produktivbetrieb?

Nicht immer. PASSED bedeutet, dass die erforderlichen Assertions in dieser Sandbox und bei diesen Versionen erfüllt waren. Eine Sandbox verhält sich selten genau wie die Produktion, deshalb läuft die Aktivierung weiterhin über einen kleinen Canary.

Ist das eine Zertifizierung?

Nein. Verify stellt keine Zertifizierungen aus. Ein Ergebnis ist ein Beleg, den Sie selbst lesen und beurteilen können.

Was, wenn ein Verkäufer keine nutzbare Sandbox hat?

Tests erfordern eine autorisierte Sandbox, eine Testumgebung oder eine vereinbarte Testunterkunft. Schreibende Tests bleiben in freigegebenen Sandboxes, Simulatoren oder vereinbarten Testunterkünften.

Kann KI Tests schreiben und ausführen?

KI kann Grenzfälle vorschlagen, die ein Mensch prüft. Freigegebene Fälle durchlaufen weiterhin Schemaprüfungen und laufen nur über den zugelassenen Test-Runner.

Welchen Test hätte Ihrer Meinung nach jeder Partner machen sollen?

Schicken Sie uns den Fall, der Ihnen Probleme bereitet hat, und wir sagen Ihnen, wie der Testplan damit umgeht.

Erzählen Sie uns von Ihrem Fall