Zum Hauptinhalt springen

Browser-Flows

Prüfen Sie, ob Ihr Login noch funktioniert, nicht nur, ob er antwortet

Ein HTTP-Check auf Ihrer Login-Seite beweist, dass die Seite lädt. Er kann Ihnen nicht sagen, ob sich das Formular noch absenden lässt, ob das Session-Cookie noch gesetzt wird oder ob das OAuth-Secret abgelaufen ist. Ein Browser-Flow meldet sich so an, wie es ein Nutzer tut, und sagt Ihnen, wenn das nicht mehr funktioniert.

Der Ausfall, den ein HTTP-Check nicht sieht

Jedes Archiv von Ausfallberichten kennt diesen Fall. Die Login-Seite lieferte die ganze Zeit 200, also blieb der Monitor grün, während niemand tatsächlich hineinkam. Ein abgelaufenes OAuth-Client-Secret, ein JavaScript-Bundle, das mit 404 antwortet, ein Session-Cookie, das nicht mehr gesetzt wird: Keines davon ändert die Statuszeile der Seite, auf der das Formular liegt. Ein Flow-Check führt die Anmeldung selbst aus, also wird genau das gemessen, worauf es Ihnen ankommt.

Aufzeichnen statt schreiben

Chrome bringt in den DevTools einen Recorder mit. Melden Sie sich einmal an, während er läuft, exportieren Sie die Aufzeichnung als JSON und ziehen Sie die Datei in das Monitorformular. Daraus werden Schritte, die Sie lesen und bearbeiten können. Selektoren werden so übernommen, wie sie geschrieben sind, der Fokus-Klick vor dem Tippen geht im Ausfüllen auf, und alles, was die Aufzeichnung nicht transportieren konnte, wird aufgelistet, statt geraten zu werden.

Das Passwort landet nie in der Konfiguration

Eine Aufzeichnung enthält alles, was Sie eingetippt haben, im Klartext. Der Import übernimmt den Wert von allem, was nach Passwort oder Token aussieht, nicht, sondern verweist Sie auf ein Geheimnis der Organisation. Der Monitor speichert dann einen Verweis wie {{login_password}}, nie die Zugangsdaten selbst. Nutzen Sie dafür ein eigenes Konto mit wenigen Rechten, kein echtes und niemals ein Admin-Konto.

Ein Fehler, der sich selbst benennt

Scheitert ein Schritt, erhalten Sie den Schritt, den Grund und die Seite, wie sie in diesem Moment aussah: die URL, die der Browser erreicht hatte, den Titel, den sichtbaren Text und alles, was die Seite in die Browserkonsole geschrieben hat. Meist klärt die URL die Sache schon allein. Steht der Browser nach dem Absenden noch auf dem Login-Pfad, wurden die Zugangsdaten nie angenommen.

Den Bruch kommen sehen, nicht erst den Bruch

Jeder Lauf wird gespeichert, auch die erfolgreichen, mit dem Ergebnis und der Dauer jedes Schritts. Die Monitorseite zeichnet pro Schritt ein kleines Diagramm, jedes mit eigener Skala, sodass eine Wartezeit, die sich von 200 ms auf vier Sekunden hochgeschlichen hat, ins Auge fällt, statt neben einem Schritt, der ohnehin eine Sekunde dauert, flach zu wirken. Das ist der Login zwei Wochen, bevor er ausfällt. Fehlgeschlagene Schritte fließen nicht in die Linie ein und werden daneben gezählt, denn ein scheiternder Schritt wartet sein ganzes Timeout ab und würde sonst jede Zeitmessung um ihn herum überdecken.

Der schwerste Check, entsprechend bepreist

Ein Flow steuert pro Lauf einen echten Browserprozess, und das kostet weit mehr als eine HTTP-Anfrage. Deshalb läuft er nicht öfter als alle fünf Minuten, die Zahl der Flow-Monitore ist je nach Tarif begrenzt, und Flows laufen nur in Regionen, in denen eine Browser-Engine verfügbar ist. Überwachen Sie die eine Strecke, auf die es ankommt, mit einem Flow, und behalten Sie für alles andere einfache HTTP-Checks.

Ein 200 ist kein Login

Dieselbe Minute, zwei Checks gegen dieselbe Seite. Der HTTP-Check misst DNS, den TCP-Verbindungsaufbau, den TLS-Handshake und das erste Byte, findet alle vier gesund und hört bei der Statuszeile auf. Der Flow macht weiter: Er füllt das Formular aus, sendet es ab und sucht nach der Seite, die es erst gibt, wenn man angemeldet ist. Alles hier läuft gegen the-internet.herokuapp.com, eine öffentliche Übungsseite, sodass Sie denselben Monitor bauen und ihm bei der Arbeit zusehen können.

Einmal aufzeichnen, die Schritte behalten

Der Recorder von Chrome exportiert, was Sie getan haben, als JSON. Ziehen Sie die Datei hinein, und daraus werden Schritte. Der Fokus-Klick vor dem Tippen geht im Ausfüllen auf, das Icon des Absende-Buttons wird zum Button, und das Passwort übersteht den Weg nie.

Wenn es bricht, sagt es, wo

Ein fehlgeschlagener Schritt benennt sich selbst, und der Lauf liefert die Seite zurück, die er gerade vor sich hatte. Meist klärt die URL allein die Sache: Noch auf der Login-Seite heißt, die Zugangsdaten wurden nie angenommen.

Ein Login-Flow, wie die API ihn speichert

{
  "type": "flow",
  "start_url": "https://the-internet.herokuapp.com/login",
  "steps": [
    {"op": "fill",   "selector": "#username", "value": "tomsmith"},
    {"op": "fill",   "selector": "#password", "value": "{{login_password}}"},
    {"op": "click",  "selector": "#login > button"},
    {"op": "assert_url",  "contains": "/secure"},
    {"op": "assert_text", "contains": "secure area"}
  ],
  "timeout": 30000,
  "step_timeout": 10000,
  "verify_tls": true
}

Auf einen Blick

  • Was er beweist eine echte Anmeldung, von Anfang bis Ende
  • Schritte ausfüllen, klicken, warten, prüfen
  • Erstellung Chrome-Aufzeichnung importieren
  • Zugangsdaten als Verweis auf ein Geheimnis gespeichert
  • Prüfintervall ab 5 Minuten
  • Einstiegspreis kostenlos, ohne Karte

Links

In unter 5 Minuten startklar.

Kostenlos starten

Funktionen · Preise · Notizen