Zum Hauptinhalt springen

Dateien: Hochladen, Herunterladen und Öffnen

Tests müssen häufig mit Dateien arbeiten – das Hochladen eines Lebenslaufs als PDF, das Herunterladen einer generierten Rechnung oder das Öffnen eines Berichts in einem neuen Tab. Dieses Kapitel erklärt, wie msg.ZenTestAI diese Vorgänge zur Laufzeit handhabt, wie Sie Dateien in Ihre Testschritte einbinden und welche Einschränkungen zu beachten sind.

Die Dateibibliothek

Alle Dateien, die ein Test hochladen kann, befinden sich in der zentralen Dateibibliothek unter Einstellungen → Dateien (siehe Datei-Upload zur Verwaltung der Bibliothek selbst). Dateien sind mandantenspezifisch, bleiben zwischen Testläufen erhalten und werden über ihre interne ID referenziert – das Umbenennen oder Ersetzen einer Datei führt also nicht dazu, dass bestehende Testschritte, die auf sie verweisen, ungültig werden.

Jede Datei hat einen Verwendungstyp, der bestimmt, wie der Runner sie behandelt:

VerwendungstypVerwenden Sie diesen, wenn …
UploadDer Testschritt diese Datei in die zu testende Anwendung hochladen soll (z. B. ein Lebenslauf-PDF in einem Bewerbungsformular).
Download-ValidierungDie Datei eine Referenzkopie von etwas ist, das die zu testende Anwendung erzeugen soll. Weisen Sie sie einem Download-Schritt als Beleg zu.

Downloads, die während eines Testlaufs erzeugt werden, werden nicht in der Dateibibliothek gespeichert – sie werden als Ausführungsartefakte erfasst und in der Ausführungsansicht direkt neben dem Schritt angezeigt, der sie erzeugt hat.

Uploads

Verknüpfen einer Datei mit einem Schritt

Öffnen Sie in den Testdetails die Einstellungen-Seitenleiste des Schritts und verwenden Sie die Dateiauswahl unter Dateien. Sie können eine oder mehrere Dateien vom Typ Upload aus der Bibliothek anhängen. Die gewählten Dateien werden Teil des Kontextes des Schritts und begleiten den Test bei seiner Ausführung.

Wie der Runner hochlädt

Wenn der Schritt ausgeführt wird, achtet der KI-Agent auf jedes <input type="file">-Element, mit dem er interagieren muss. Sobald dieses Datei-Eingabefeld angesteuert wird, ruft der Runner Playwrights natives setInputFiles mit der/den Datei(en) auf, die Sie dem Schritt zugewiesen haben – ein manueller Dateiauswahldialog muss nicht bedient werden, der Upload erfolgt über die normale Datei-Input-API des Browsers.

Was dies für Sie bedeutet:

  • Einzelne Datei — schreiben Sie den Prompt natürlich („Lade den Lebenslauf hoch“). Der Runner wählt die einzige Upload-Datei aus, die dem Schritt zugewiesen ist.
  • Mehrere Dateien in einem Schritt — die KI prüft die Attribute des <input>-Elements (multiple, accept, webkitdirectory), um zu entscheiden, ob alle zugewiesenen Dateien auf einmal hochgeladen oder die richtige anhand des Dateinamens/-typs ausgewählt werden soll. Sie können dies auch im Prompt präzisieren: "Lade die Datei mit dem Namen report.pdf hoch".
  • Keine Datei dem Schritt zugewiesen — falls dennoch ein Dateiauswahldialog ausgelöst wird, greift der Runner darauf zurück, jede Upload-Datei im Mandanten aufzulisten und eine auszuwählen. Dies ist ein Notbehelf: Verlassen Sie sich nicht darauf. Weisen Sie die Datei explizit zu.
tipp

Beschränken Sie Datei-Uploads auf einen pro Schritt. Multi-File-Uploads sind schwerer zu debuggen und für die KI bei Fehlern schwerer zu unterscheiden.

Was der Runner bei Uploads nicht tut

  • Keine Drag-and-Drop-Uploads. Anwendungen, die Dateien ausschließlich per HTML5 Drag-and-Drop akzeptieren (ohne ein Fallback auf <input type="file">), werden nicht unterstützt. Wenn Sie das Datei-Eingabefeld direkt ansteuern können, tun Sie dies.
  • Keine Assertion nach dem Upload. Der Runner betrachtet den Upload als erfolgreich, sobald setInputFiles zurückkehrt. Wenn Sie verifizieren müssen, dass die Anwendung die Datei tatsächlich akzeptiert hat (z. B. durch das Erscheinen eines Dateinamens-Chips), fügen Sie einen separaten Assertions-Schritt hinzu.

Downloads

Wie der Runner Downloads erfasst

Der Runner überwacht ständig Browser-Download-Ereignisse – es gibt keinen speziellen „Download“-Schritttyp und kein Kontrollkästchen, das aktiviert werden muss. Alles, was die Anwendung als Download auslöst (ein Absenden eines Formulars, eine Content-Disposition: attachment-Antwort, ein Link mit download-Attribut, ein direkt angesteuertes PDF, …) wird automatisch erfasst.

Erfasste Downloads werden:

  • für die Dauer der Testausführung an einem temporären Ort gespeichert,
  • als Beleg an den Schritt angehängt, der sie ausgelöst hat, und sind in der Ausführungs-UI einsehbar,
  • im Kontext des Tests gespeichert, sodass ein späterer Schritt auf "die heruntergeladene Datei" verweisen kann.

PDFs, die normalerweise direkt im Browser angezeigt würden, werden ebenfalls abgefangen und wie Downloads behandelt, sodass der gleiche Ablauf auch für „Dieses PDF anzeigen“-Links funktioniert.

Referenzdateien (Download-Validierung)

Sie können eine Download-Validierung-Datei an einen Schritt anhängen, um anzuzeigen: „So sollte der Download aussehen“. Die heruntergeladene Datei erscheint neben der Referenz in der Ausführungsansicht, sodass ein Prüfer sie direkt vergleichen kann. Nutzen Sie dies zur Dokumentation von „Soll-Ist-Vergleichen“.

Mehrere Downloads in einem Schritt

Der Runner verfolgt jeden Download, den ein Schritt erzeugt, nicht nur den ersten. Wenn ein einzelner Klick mehrere Downloads auslöst (z. B. „Alle exportieren“), wird jede Datei erfasst und unter den Belegen des Schritts aufgelistet.

Öffnen einer zuvor heruntergeladenen Datei

Ein gängiges Muster ist Download in einem Schritt → Öffnen im nächsten → Assertion auf den Inhalt. msg.ZenTestAI unterstützt dies:

Schritt 1: Klicke auf den Link "Rechnung herunterladen"
Schritt 2: Öffne die heruntergeladene Rechnung
Schritt 3: Überprüfe, ob die Rechnung den Kundennamen "Acme Ltd" enthält

In Schritt 2 erkennt der Runner "Öffne die heruntergeladene …" (oder ähnliche Formulierungen) als Anforderung, zu einer der Dateien zu navigieren, die im aktuellen Testlauf bereits erfasst wurden. Er öffnet die Datei in einem neuen Tab, und der Test wird ab dem nächsten Schritt in diesem Tab fortgesetzt.

Wenn im selben Testlauf mehr als eine Datei heruntergeladen wurde, beziehen Sie sich auf die gewünschte Datei anhand des Dateinamens oder der Position ("Öffne den neuesten Download", "Öffne die Datei report-2026-05.pdf").

tipp

Wenn die zu testende Anwendung eine zuvor heruntergeladene Datei als Upload verarbeiten soll (z. B. eine Vorlage herunterladen, bearbeiten und erneut hochladen), weisen Sie die Datei zu, als wäre es ein Upload, und der Runner wird sie in der Datei-Input-Interaktion des nächsten Schritts wiederverwenden.

Einschränkungen und Besonderheiten

  • Keine Inhalts-Assertions „out of the box“. Der Runner extrahiert keinen PDF-Text, führt kein OCR bei Bildern durch und vergleicht Dateiinhalte nicht Byte für Byte. Um den Inhalt einer heruntergeladenen Datei zu prüfen, öffnen Sie diese (siehe oben) und führen Sie eine Assertion gegen das durch, was der Browser rendert – dies funktioniert gut bei PDFs mit einer auswählbaren Textebene oder bei HTML-Berichten.
  • Authentifizierte Downloads funktionieren – der Download übernimmt die Browsersitzung. Keine zusätzliche Konfiguration erforderlich.
  • Downloads aus Sub-Iframes werden wie Downloads im Hauptframe behandelt.
  • window.open und target="_blank"-Downloads werden automatisch erfasst; Sie müssen nicht zuerst den Tab wechseln.
  • Dateien sind temporär. Alles, was während eines Laufs heruntergeladen wird, wird nicht in die Dateibibliothek übernommen und gelöscht, sobald die Ausführungsbelege bereinigt werden. Um einen Download dauerhaft zu speichern, laden Sie ihn manuell in die Bibliothek hoch.
  • Größenbeschränkungen gelten für die Dateien, die Sie in die Bibliothek hochladen, nicht für das, was die zu testende Anwendung produziert. Siehe Datei-Upload für die aktuellen Grenzwerte.

Zusammenfassung – drei Praxisbeispiele

Einen Lebenslauf als PDF hochladen.

  1. Laden Sie unter Einstellungen → Dateien die cv.pdf mit dem Verwendungstyp Upload hoch und geben Sie ihr den Bibliotheksnamen CV.
  2. Öffnen Sie bei dem Schritt „Lade den Lebenslauf hoch“ die Seitenleiste der Schritteinstellungen und hängen Sie die Datei CV an.
  3. Schreiben Sie den Schritt in natürlicher Sprache: "Klicke auf 'Datei auswählen' und lade den Lebenslauf hoch".

Eine generierte Rechnung herunterladen und als Referenz für die Überprüfung behalten.

  1. Laden Sie unter Einstellungen → Dateien die invoice-reference.pdf mit dem Verwendungstyp Download-Validierung hoch.
  2. Hängen Sie bei dem Schritt, der den Download auslöst, die Referenzdatei über die Seitenleiste der Schritteinstellungen an.
  3. Schreiben Sie: "Klicke auf 'Rechnung herunterladen'". Der Runner erfasst das erzeugte PDF und speichert es als Beleg neben der Referenz.

Einen Wert innerhalb eines heruntergeladenen Berichts überprüfen.

  1. Schritt 1: "Klicke auf 'Bericht generieren'" — der Runner erfasst das PDF.
  2. Schritt 2: "Öffne den heruntergeladenen Bericht" — die Datei wird in einem neuen Tab geöffnet.
  3. Schritt 3: "Überprüfe, ob der Bericht den Gesamtbetrag von EUR 12.345,67 enthält" — wird gegen das gerenderte PDF im neuen Tab ausgeführt.

Siehe auch: Datei-Upload zur Dateiverwaltung in der Bibliothek, Prompting für die natürlichsprachliche Schrittsyntax und Behandlung von Tabs für die Arbeit mit dem neuen Tab, den "Öffnen …" erzeugt.