Dummy-Datei-Generator

Erzeuge Dummy-Dateien mit exakt der angegebenen Bytegröße – Bilder, Audio, Video, PDFs, Text und mehr – vollständig im Browser. Praktisch zum Testen von Größenlimits bei Upload-Formularen. Die Dateien werden niemals an einen Server gesendet.

Format

Format Dateiendung MIME-Typ Obergrenze laut Spezifikation Hinweis
Text (TXT) .txt text/plain Praktisch unbegrenzt Gefüllt mit lesbarem, sich wiederholendem Text
CSV .csv text/csv Praktisch unbegrenzt Dummy-Tabellendaten mit Kopfzeile
JSON .json application/json Praktisch unbegrenzt In ein einzelnes String-Feld gefüllt
Binärdatei (BIN) .bin application/octet-stream Praktisch unbegrenzt Beliebige Bytes, die 0x00 bis 0xFF wiederholen
Bild (PNG) .png image/png Praktisch unbegrenzt Gültiges 1x1-Bild + Füll-Chunk
Audio (WAV) .wav audio/wav 4 GiB Stille PCM-Daten (tatsächlich abspielbar)
Video (MP4) .mp4 video/mp4 Praktisch unbegrenzt Echte Aufnahme in unterstützten Browsern, sonst Platzhalter mit ausschließlich gültiger Struktur
Video (WebM) .webm video/webm Praktisch unbegrenzt Tatsächlich aufgezeichnete, wenige Sekunden lange Animation (nur unterstützte Browser)
PDF .pdf application/pdf Praktisch unbegrenzt Gültige leere einseitige PDF
ZIP .zip application/zip 4 GiB Unkomprimiertes Archiv mit einem einzelnen Eintrag

Was ist ein Dummy-Datei-Generator?

Wer eine Upload-Funktion entwickelt, muss prüfen, ob Größenlimits und Endungsprüfungen tatsächlich wie vorgesehen funktionieren. Dafür braucht man eine Datei, die "exakt eine bestimmte Byte-Anzahl groß, aber trotzdem gültig für ihr Format" ist – und genau solche Dateien hat man selten griffbereit. Dieses Tool erzeugt Text, Bilder, Audio, Video, PDFs, ZIP-Archive und mehr, jeweils in exakt der gewünschten Größe.

Jede erzeugte Datei ist gültige Daten gemäß der jeweiligen Formatspezifikation. Viele Formate reservieren Bereiche, die ein Parser überspringen darf, und genau diese nutzt das Tool zum Auffüllen, sodass beim Öffnen kein Fehler entsteht. Die gesamte Verarbeitung findet im Browser statt, und nichts wird jemals an einen Server gesendet. WAV und ZIP sind dabei durch die jeweilige Formatspezifikation auf 4 GiB begrenzt.

So erzeugen Sie eine Dummy-Datei

  1. Dateiformat auswählen Wählen Sie das Format, das Ihr Testziel akzeptiert. Möchten Sie die Prüfung von Endung oder MIME-Typ testen, wählen Sie genau dieses Format.
  2. Größe festlegen Geben Sie Zahl und Einheit ein. Bei einem Limit von "10 MB" verschiebt sich die Grenze je nachdem, ob 10.000.000 oder 10.485.760 Byte gemeint sind.
  3. Dateinamen bestimmen Sie können die Endung im gewählten Namen festlegen. Ändern Sie diesen, um Prüfungen anhand des Dateinamens zu testen.
  4. Erzeugen und herunterladen Mit "Erzeugen" wird die Datei erstellt. Bei großen Größen dauert dies länger, lässt sich in der Zwischenzeit aber jederzeit abbrechen.

Tipps für die Nutzung

  • Die Validierungslogik von Upload-Formularen prüft oft Dateiendung, MIME-Typ und Dateigröße als drei getrennte Schritte. Da dieses Tool Dateien erzeugt, die in jeder anderen Hinsicht der Spezifikation entsprechen, lässt sich gezielt nur das Größenlimit testen.
  • Ein Limit von "bis zu 10 MB" kann je nach Implementierung 10.000.000 Byte (106) oder 10.485.760 Byte (220) bedeuten. Über die Einheitenauswahl lassen sich beide Basen wählen, sodass sowohl der genaue Grenzwert als auch ein Byte darüber getestet werden kann.
  • Chrome und Edge schreiben die Daten direkt und gestreamt auf das gewählte Laufwerk, sodass sich auch Dateien im Umfang mehrerer Dutzend Gigabyte erzeugen lassen, ohne den Arbeitsspeicher zu belasten. Firefox und Safari setzen die Datei zunächst im Arbeitsspeicher zusammen, was eine praktische Obergrenze für die Größe mit sich bringt.
  • In unterstützten Browsern wird Video (MP4/WebM) mit dem browserinternen Encoder tatsächlich als einige Sekunden lange Animation aufgezeichnet, sodass es beim Öffnen wirklich abgespielt werden kann. Alles andere – das Füllmaterial, das den Großteil der Datei ausmacht, sowie der Inhalt der übrigen Bild- und Audioformate – ist ein Dummy. Der Zweck ist ausschließlich das Testen von Größe, Dateiendung und MIME-Typ-Validierung.

Einsatzmöglichkeiten für Dummy-Dateien

Grenzwerttests für Upload-Limits

Erzeugen Sie eine Datei genau am Limit und eine, die ein Byte darüber liegt, und testen Sie beide. So lässt sich prüfen, ob die Fehlermeldung exakt an der spezifizierten Grenze erscheint.

Prüfung von Endungs- und MIME-Typ-Erkennung

Erzeugen Sie ein erlaubtes und ein verbotenes Format und reichen Sie beide ein, um festzustellen, nach welchem Kriterium tatsächlich abgelehnt wird.

Verhalten bei großen Übertragungen prüfen

Mit mehrere Gigabyte großen Dateien lässt sich testen, ob Fortschrittsanzeige, Timeout und Wiederaufnahme nach Abbruch korrekt funktionieren – ganz ohne echte Daten beschaffen zu müssen.

Speicher- und Bandbreitenbedarf abschätzen

Indem Sie eine Datei in der erwarteten Größe tatsächlich ablegen, lassen sich Speicherverbrauch und Übertragungsdauer real messen.

Begriffe rund um die Dateivalidierung

MIME-Typ
Eine Zeichenkette, die die Art einer Datei angibt, etwa image/png, und häufig zur Entscheidung über die Zulässigkeit eines Uploads herangezogen wird.
Grenzwerttest
Eine Testmethode, die exakt die Grenze eines Limits sowie die Werte knapp davor und danach prüft, da dort die meisten Fehler auftreten.
Füllmaterial
Bedeutungslose Daten, die nur hinzugefügt werden, um die Zielgröße zu erreichen. Sie werden in Bereiche eingefügt, die das Format zu überspringen erlaubt, sodass die Datei intakt bleibt.
GiB und GB
Ein GiB entspricht 1.073.741.824 Byte, ein GB entspricht 1.000.000.000 Byte. Diese Differenz führt häufig zu abweichenden Auslegungen von Größenlimits.
Streaming-Schreibvorgang
Ein Verfahren, bei dem Daten nach und nach an ihr Ziel geschrieben werden, sodass auch sehr große Dateien verarbeitet werden können, ohne sie vollständig im Arbeitsspeicher zu halten.

Häufig gestellte Fragen

Nein. Der gesamte Erzeugungsvorgang läuft vollständig im Browser ab, und der Inhalt wird zu keinem Zeitpunkt an einen Server gesendet.

Ja – in unterstützten Browsern (z. B. Chrome) zeichnet der browserinterne Encoder tatsächlich einige Sekunden einer Animation auf, sodass die Datei beim Öffnen abgespielt werden kann. Der Großteil der Datei besteht aus Füllmaterial, das hinzugefügt wird, um die exakte Größe zu erreichen. MP4 wechselt in Browsern ohne Aufnahmeunterstützung automatisch zu einem Platzhalter mit ausschließlich gültiger Struktur, sodass die Erzeugung selbst niemals fehlschlägt. WebM lässt sich nur in Browsern auswählen, die die Aufnahme unterstützen.

Weil bei beiden Formaten das Feld, das die Dateigröße speichert, laut Spezifikation fest auf 32 Bit begrenzt ist (maximal etwa 4,29 GB). Das ist keine Einschränkung unserer Implementierung, sondern eine Obergrenze der Formatspezifikation selbst.

TXT, CSV, JSON, BIN, PNG, PDF, MP4 und WebM haben laut Formatspezifikation keine Obergrenze. Mit der aktuellen Version von Chrome oder Edge (die das direkte Schreiben auf die Festplatte unterstützen) lassen sich daher extrem große Dateien erzeugen.
Tool-kun

Übrigens – Wo "gültig" endet und "beschädigt" beginnt

Die meisten Dateiformate reservieren Bereiche, die ein Parser ausdrücklich überspringen darf – die unbekannten Chunks von PNG, die free-Box von MP4 und das Void-Element von WebM sind Beispiele dafür. Diese wurden von Anfang an als Platz reserviert, der für zukünftige Erweiterungen gedacht ist und von heutigen Parsern ignoriert werden soll – daher beschädigt das Auffüllen mit Füllmaterial die Datei niemals.

Bei Video machen wir die Datei tatsächlich abspielbar, indem wir vor dem Füllmaterial echtes Filmmaterial platzieren. Da sich die bitgenaue Kodierung eines Codecs von Hand kaum als korrekt garantieren lässt, überlassen wir diese Aufgabe stattdessen dem browsereigenen, eingebauten Encoder (der MediaRecorder-API), der einige Sekunden einer Canvas-Animation aufzeichnet, woraufhin das Füllmaterial angehängt wird. So lassen sich der Grundsatz "immer eine garantiert gültige Datei zurückgeben" und der Wunsch "der Nutzer möchte tatsächlich ein Video sehen" miteinander vereinbaren.

Interessanterweise ist eine ZIP-Datei so aufgebaut, dass es genügt, das "zentrale Verzeichnis" am Ende zu lesen, um die vollständige Liste ihres Inhalts zu erfahren. Dies gilt als Überbleibsel aus der Ära der Magnetbänder, als vom Ende her gelesen wurde, und ist auch heute noch der Grund, warum sich aus einer riesigen ZIP-Datei eine einzelne Datei blitzschnell herausziehen lässt.