Die kurze Antwort

Sie fügen keine Workflow-Datei hinzu und schreiben kein Skript, das die Preview-URL aus Ihren Build-Logs herauskratzt. TestSprite installiert sich als GitHub App, lauscht auf das Deployment-Event, das Ihre Pipeline bereits erzeugt, ermittelt die Preview-URL anhand eines Musters, das Sie einmal festlegen, führt Ihre Tests dagegen aus und postet das Ergebnis als Kommentar auf dem Pull Request zurück.

Die Einrichtung dauert etwa zehn Minuten, erfordert Admin-Rechte zur Installation einer GitHub App und keine Änderungen an Ihrem Repository.

Ihre Pipeline deployt

Vercel baut den Pull Request und erzeugt ein Deployment-Event in GitHub. TestSprite baut oder deployt selbst nichts.

TestSprite hört das Event

Die GitHub App empfängt es, löst die Ziel-URL anhand Ihres Musters auf und startet den Lauf.

Ergebnisse landen am PR

Ein Kommentar mit Pass/Fail-Zahlen, fehlgeschlagenen Schritten, Screenshots und einem Fix-Prompt — plus ein optionaler erforderlicher Check, der den Merge blockiert.

Voraussetzung: Bestätigen Sie, dass der Pull Request ein Deployment erzeugt

TestSprite löst über ein Deployment-Event aus, daher muss dieses Event existieren, bevor irgendetwas anderes funktioniert. Öffnen Sie einen bestehenden Pull Request und bestätigen Sie, dass ein Deployment mit einer anklickbaren URL aufgeführt ist, öffnen Sie dann diese URL und prüfen Sie, ob die Preview-Umgebung tatsächlich lädt.

Bei Vercel erscheint das als Bot-Kommentar auf dem Pull Request, der das Projekt auflistet, ein Ready-Status und ein Link zur Preview. AWS Amplify, Netlify und selbstgehostete Pipelines, die GitHub-Deployments erzeugen, liefern alle das gleiche Signal in ihrem eigenen Format — entscheidend ist, dass ein Deployment existiert und seine URL erreichbar ist.

Wenn auf Ihrem Pull Request kein Deployment erscheint, stoppen Sie hier und beheben Sie zuerst Ihre CI/CD-Pipeline. TestSprite hat nichts, worauf es lauschen kann, bis ein Deployment-Event existiert.

Schritt 1 — GitHub mit Ihrem Workspace verbinden

Dies ist eine einmalige Einrichtung pro Workspace. Gehen Sie in TestSprite zu Workspace Settings → Integrations, suchen Sie die Zeile GitHub und klicken Sie auf Connect. Sie werden zu GitHub weitergeleitet, um die Organisation oder das persönliche Konto auszuwählen, dem das Repository gehört, wählen dann All repositories oder Only select repositories und klicken auf Install & Authorize.

Die angeforderten Berechtigungen sollten Sie kennen, bevor Sie sie genehmigen:

ZugriffScopes
LesenActions, Checks, Issues, Metadata
Lesen und SchreibenCode, Commit-Status, Deployments, Pull Requests

Schreibzugriff wird verwendet, um Testergebnisse an Ihre Pull Requests und Commits zurückzumelden. TestSprite pusht keine Commits und verändert keine Ihrer Workflow-Dateien. Wenn Ihre Organisation während der Installation nicht aufgelistet wird, haben Sie keine Berechtigung, GitHub Apps dafür zu installieren — ein Organisationsinhaber muss dies genehmigen.

Schritt 2 — Das Repository mit einem Projekt verbinden

Öffnen Sie das TestSprite-Projekt, das Sie verbinden möchten, gehen Sie zum Tab GitHub Action und klicken Sie auf Connect GitHub Action. Wählen Sie dann, wie Tests ausgelöst werden sollen:

TriggerAm besten fürWo Ergebnisse erscheinen
Pull RequestRegressionen vor dem Merge abfangenEin Kommentar auf dem Pull Request
Push auf BranchEine geteilte Umgebung wie Staging oder Dev nach jedem Merge testenEin Check auf dem Commit

Ein Trigger reicht zum Start. Sie können auch beide anlegen — sie laufen unabhängig voneinander.

Schritt 3 — Das Event auswählen, das "Deployment fertig" bedeutet

Wählen Sie den Tab Pull Request, fügen Sie die URL eines bestehenden Pull Requests mit einem funktionierenden Preview-Deployment ein und klicken Sie auf Detect Events. TestSprite listet die CI/CD-Events auf, die es auf diesem Pull Request gefunden hat — GitHub-Actions-Checks, Bot-Kommentare von Vercel oder Amplify, Workflow-Läufe — und Sie wählen, welches davon einen Lauf startet.

Wählen Sie das Event, das nachdem das Deployment live und die URL erreichbar ist auslöst. Das ist der häufigste Fehler bei der Einrichtung: Ein Event, das beim Build-Start auslöst, führt Ihre Tests gegen eine URL aus, die noch nicht bereit ist, und jeder Test schlägt fehl.

Schritt 4 — Das Ziel-URL-Muster ausfüllen

Jeder Hosting-Anbieter benennt Preview-URLs anders, daher teilen Sie TestSprite mit, wie die URL für einen gegebenen Pull Request zu konstruieren ist. Fünf Platzhalter stehen zur Verfügung:

PlatzhalterLöst auf zu
{pr}Pull-Request-Nummer
{branch}Branch-Name
{branch-slug}Branch-Name, URL-sicher
{sha}Vollständiger Commit-SHA
{short-sha}Verkürzter Commit-SHA

Gleichen Sie das Muster Zeichen für Zeichen mit einer echten Preview-URL ab:

Ihre Preview-URLs sehen so ausGeben Sie dieses Muster ein
https://app-git-login-fix-team.vercel.apphttps://app-git-{branch-slug}-team.vercel.app
https://pr-123.example.comhttps://pr-{pr}.example.com

Vercels Standard-Preview-Hostnamen werden aus dem Branch gebildet, weshalb {branch-slug} dort üblicherweise der richtige Platzhalter ist statt {pr}. Wenn Ihr Host zufällige Subdomains ohne erkennbares Muster erzeugt, richten Sie stattdessen eine stabile Alias-URL für die Preview-Umgebung ein und verwenden Sie diese.

Ein Push-Trigger benötigt überhaupt kein Muster — er läuft gegen die konfigurierte URL der von Ihnen gewählten TestSprite-Umgebung, also wählen Sie Dev für dev oder Production für main.

Schritt 5 — Ein Test-Event senden, bevor Sie speichern

Klicken Sie auf Send Test Event. Dies führt Ihre Tests genau wie ein echter Trigger gegen den Beispiel-Pull-Request aus, sodass Sie den gesamten Ablauf vorab prüfen können, bevor Sie sich darauf festlegen. Warten Sie etwa 30 Sekunden und kehren Sie dann zum Pull Request auf GitHub zurück — ein TestSprite-Kommentar erscheint.

Öffnen Sie die URL in diesem Kommentar, bevor Sie fortfahren. Bestätigen Sie, dass sie erreichbar ist und auf die erwartete Umgebung zeigt. Falls sie falsch ist, korrigieren Sie das Muster und senden Sie ein weiteres Test-Event, statt auf den nächsten Pull Request zu warten, um es herauszufinden. Sobald der Lauf abgeschlossen ist, aktualisiert TestSprite denselben Kommentar mit dem Ergebnis.

Wenn das Test-Event korrekt aussieht, klicken Sie auf Create Trigger. Er erscheint in der Triggers-Liste als Active markiert und läuft automatisch bei jedem zukünftigen Pull Request. Zwei optionale Umschalter sind es wert, bewusst gesetzt zu werden:

UmschalterWas er tut
Include draft PRsFührt Tests sowohl auf Draft-Pull-Requests als auch auf review-fertigen aus
Block PR until tests passMacht den TestSprite-Check erforderlich, sodass Merges blockiert werden, solange Tests fehlschlagen

Wenn Ihre Preview hinter Deployment Protection sitzt

Dies ist das Fehlerbild, das wie eine funktionierende Einrichtung aussieht. Mit aktiviertem Vercel Deployment Protection sitzt jede Preview-URL hinter einer Authentifizierungsschranke, und ein externer Tester erhält die Login-Seite statt Ihrer Anwendung. Die Tests werfen keinen Fehler — sie beschreiben eine Seite, die niemand erwartet hat.

Der Check aus Schritt 5 fängt das ab: Öffnen Sie die URL aus dem TestSprite-Kommentar in einem privaten Fenster. Wenn Sie einen Vercel-Login-Bildschirm sehen, ist der Schutz aktiv. Die zwei Wege nach vorn sind, den Schutz für die Preview-Umgebung zu deaktivieren, oder Vercels Protection Bypass for Automation zu nutzen, das ein Secret erzeugt, das Vercel sowohl als x-vercel-protection-bypass-Query-Parameter als auch als Header akzeptiert. Da das Ziel-URL-Muster nur eine URL ist, kann die Query-Parameter-Form daran angehängt werden:

https://app-git-{branch-slug}-team.vercel.app?x-vercel-protection-bypass=YOUR_SECRET

Generieren Sie das Secret unter Project Settings → Deployment Protection → Protection Bypass for Automation. Seien Sie hierbei bewusst — es speichert ein Bypass-Secret in einem Einstellungsfeld, weshalb das Deaktivieren des Schutzes für Preview-Umgebungen die sauberere Option ist, wenn Ihre Previews nichts Sensibles enthalten.

Das Ergebnis lesen

Wenn ein Lauf abgeschlossen ist, aktualisiert TestSprite seinen Pull-Request-Kommentar — oder Commit-Check — mit dem Ergebnis. Der Kommentar ist strukturiert, und die letzte Zeile ist die wichtigste, wenn ein KI-Agent den Code geschrieben hat:

AbschnittWas er Ihnen sagt
HauptergebnisWie viele Tests bestanden, fehlschlugen und blockiert wurden
Quality ScoreBerechnet auf der ausführbaren Teilmenge Ihrer Suite. Blockierte Fälle werden ausgeschlossen und separat gemeldet, da sie meist eher auf eine Lücke in der Testumgebung als auf eine Produktregression hindeuten
Fehlgeschlagene TestsJeder Fehlschlag lässt sich aufklappen und zeigt, was erwartet wurde, was beobachtet wurde, und einen Screenshot vom Moment des Fehlschlags
Vorgeschlagener Fix-PromptEin kopierfertiger Prompt, der die wahrscheinliche Ursache und Lösung beschreibt, gedacht zum direkten Einfügen in Ihren KI-Coding-Agenten

Jedes Ergebnis verlinkt zurück auf den vollständigen Report in TestSprite.

Ihre Einrichtung überprüfen

Bevor Sie sich auf die Integration verlassen, bestätigen Sie alle fünf:

  1. Die GitHub-Integration zeigt in Ihrem Workspace als Connected

  2. Das Repository erscheint im Tab GitHub Action des Projekts

  3. Ein Trigger ist aufgeführt und aktiviert

  4. Ein Test-Event hat einen TestSprite-Kommentar (Pull Request) oder Check (Push) erzeugt

  5. Die URL in diesem Kommentar oder Check öffnet die korrekt deployte Umgebung

Fehlersuche

Jeder Test schlägt fehl und die URL lädt nicht

Der Trigger löst zu früh aus — bei einem Build-Start- oder Workflow-Start-Event statt bei einem Deployment-Complete-Event. Bearbeiten Sie den Trigger und wählen Sie ein Event, das auslöst, nachdem die Umgebung live ist.

Der Kommentar zeigt die falsche URL

Prüfen Sie das URL-Muster Zeichen für Zeichen gegen eine echte Preview-URL. Senden Sie nach jeder Änderung ein weiteres Test-Event, statt auf den nächsten Pull Request zu warten.

Bei Detect Events erscheinen keine Events

Der Pull Request oder Branch hat keine aufgezeichneten CI/CD-Events, oder die GitHub App hat keinen Zugriff auf dieses Repository. Bestätigen Sie, dass das Repository in der App-Installation eingeschlossen ist.

Tests laufen gegen eine veraltete Umgebung

Bestätigen Sie, dass das ausgewählte Event dem Deployment entspricht, das Sie testen möchten. Wenn ein Branch mehrere Umgebungen hat, prüfen Sie, ob die Auswahl Environment to test übereinstimmt.

Die Organisation wird nicht aufgelistet

Sie haben keine Berechtigung, GitHub Apps dafür zu installieren. Bitten Sie einen Organisationsinhaber, die Installation zu genehmigen, und kehren Sie dann zu Schritt 1 zurück.

Tests bestehen, aber die App ist kaputt

Prüfen Sie, was die Preview-URL tatsächlich ausgeliefert hat. Eine geschützte Preview liefert eine Login-Seite zurück, die ein Test beschreiben kann, ohne fehlzuschlagen.

Die Kommandozeilen-Alternative

Die GitHub App ist die richtige Antwort, wenn Ihre Pipeline bereits Deployments erzeugt. Wenn Sie den Lauf lieber aus Ihrem eigenen Workflow heraus steuern möchten — oder überhaupt nicht auf GitHub sind — erledigt die Open-Source-TestSprite-CLI denselben Job von jedem CI-System aus. Sie ist kostenlos installierbar und Apache-2.0-lizenziert:

npm install -g @testsprite/testsprite-cli
testsprite setup

Richten Sie ein Projekt auf eine URL aus, die Sie bereits aufgelöst haben, und führen Sie die Suite zu einem Urteil aus:

testsprite project update prj_abc123 --url "$PREVIEW_URL"
testsprite test run --all --project prj_abc123 --wait --output json
#   exit 0 = alles bestanden, exit 1 = etwas ist kaputt

testsprite ci init github erstellt für diesen Weg ein Workflow-Grundgerüst, und die CLI braucht nur TESTSPRITE_API_KEY in der Umgebung, also fügt sie sich genauso leicht in CircleCI, GitLab, Jenkins oder Azure Pipelines ein. Verwenden Sie --report junit --report-file <path> für einen Sidecar, den diese Systeme nativ einlesen.

Wenn die Abläufe, die Sie interessieren, hinter dem eigenen Login Ihrer Anwendung liegen, speichern Sie ein Testkonto im Projekt, damit Läufe sich authentifizieren können. Beide Flags sind zusammen erforderlich:

testsprite project update prj_abc123 \
  --username qa@example.com \
  --password-file ./.secrets/qa-password

Häufig gestellte Fragen

Muss ich meinem Repository eine Workflow-Datei hinzufügen?

Nein. Die Integration wird vollständig in TestSprite konfiguriert, und es sind keine Änderungen an Ihrem Repository erforderlich.

Ersetzt das meinen bestehenden GitHub-Actions-Workflow?

Nein. TestSprite lauscht auf Events, die Ihr Workflow bereits erzeugt — es verändert oder ersetzt Ihre Pipeline nicht.

Welche Hosting-Anbieter werden unterstützt?

Jeder Anbieter, der ein Deployment an GitHub meldet und eine erreichbare URL bereitstellt, einschließlich Vercel, AWS Amplify, Netlify und selbstgehosteter Pipelines, die GitHub-Deployments erzeugen.

Kann ich sowohl einen Pull-Request-Trigger als auch einen Push-Trigger haben?

Ja. Legen Sie sie separat an — sie laufen unabhängig voneinander.

Was, wenn meine Preview-URLs die Pull-Request-Nummer nicht enthalten?

Das Feld für das URL-Muster erwartet ein vorhersagbares Muster. Vercels Standard-Hostnamen werden aus dem Branch gebildet, daher ist {branch-slug} meist der richtige Platzhalter. Wenn Ihr Host zufällige Subdomains erzeugt, richten Sie stattdessen eine stabile Alias-URL für die Preview-Umgebung ein und verwenden Sie diese.

Kann das Ergebnis direkt in meinen KI-Coding-Agenten einfließen?

Ja — dafür ist der Abschnitt Suggested fix prompt im Kommentar da. Es ist ein kopierfertiger Prompt, der die wahrscheinliche Ursache und Lösung beschreibt, geschrieben zum Einfügen in einen Coding-Agenten. Für eine vollständigere Schleife installiert testsprite setup --agent claude eine Verifikations-Skill, sodass der Agent selbst Tests erstellen, ausführen und triagieren kann.

Wie lange dauert die Einrichtung?

Etwa zehn Minuten, und Sie benötigen Admin-Rechte, um eine GitHub App bei der Organisation zu installieren, der das Repository gehört.

// Das Fazit

Ihre Pipeline sendet das Signal bereits. Hören Sie hin.

Ein Preview-Deployment zu testen erfordert keine neue Workflow-Datei, kein Skript, das Build-Logs durchsucht, und keine Drittanbieter-Action, die auf eine URL wartet. Ihre Pipeline erzeugt bereits ein Deployment-Event; die Arbeit besteht darin, TestSprite mitzuteilen, welches Event "live" bedeutet und wie daraus die URL zu bauen ist. Zehn Minuten, keine Repository-Änderungen, und jeder Pull Request wird gegen einen echten Browser geprüft, bevor ein Mensch draufschaut. Für den Kommandozeilen-Weg lesen Sie die Referenz unter docs.testsprite.com und geben Sie der Open-Source-CLI auf GitHub einen Stern.