Outils Développeur
Générateur de fichiers factices
Générez des fichiers factices d'une taille exacte en octets — images, audio, vidéo, PDF, texte, etc. — entièrement dans votre navigateur. Pratique pour tester les limites de taille des formulaires de téléversement. Les fichiers ne sont jamais envoyés à un serveur.
Format
| Format | Extension | Type MIME | Limite selon la spécification | Remarque |
|---|---|---|---|---|
| Texte (TXT) | .txt |
text/plain |
Pratiquement illimité | Rempli avec du texte lisible répété |
| CSV | .csv |
text/csv |
Pratiquement illimité | Données de tableau factices avec ligne d'en-tête |
| JSON | .json |
application/json |
Pratiquement illimité | Rempli dans un seul champ de type chaîne |
| Binaire (BIN) | .bin |
application/octet-stream |
Pratiquement illimité | Octets arbitraires répétant de 0x00 à 0xFF |
| Image (PNG) | .png |
image/png |
Pratiquement illimité | Image 1x1 valide + chunk de remplissage |
| Audio (WAV) | .wav |
audio/wav |
4 GiB | Données PCM silencieuses (réellement lisibles) |
| Vidéo (MP4) | .mp4 |
video/mp4 |
Pratiquement illimité | Enregistrement réel dans les navigateurs compatibles, factice à structure valide sinon |
| Vidéo (WebM) | .webm |
video/webm |
Pratiquement illimité | Animation de quelques secondes réellement enregistrée (navigateurs compatibles uniquement) |
.pdf |
application/pdf |
Pratiquement illimité | PDF valide d'une page blanche | |
| ZIP | .zip |
application/zip |
4 GiB | Archive non compressée à entrée unique |
Astuces pour générer des fichiers factices
- La logique de validation des formulaires de téléversement vérifie souvent séparément trois éléments : l'extension, le type MIME et la taille du fichier. Comme cet outil génère des fichiers valides à tous les autres égards, vous pouvez tester la limite de taille de manière isolée.
- Une limite de « 10 Mo maximum » peut correspondre à 10 000 000 octets (106) selon une implémentation, ou à 10 485 760 octets (220) selon une autre. Le sélecteur d'unité vous permet de choisir les deux bases, afin de tester à la fois la valeur limite exacte et un octet au-delà.
- Chrome et Edge diffusent les données directement vers le lecteur choisi, si bien que des fichiers de plusieurs dizaines de Go peuvent être générés sans solliciter la mémoire. Firefox et Safari assemblent d'abord le fichier en mémoire, ce qui impose une limite pratique à la taille.
- Dans les navigateurs compatibles, la vidéo (MP4/WebM) est réellement enregistrée sous la forme de quelques secondes d'animation grâce à l'encodeur intégré du navigateur, si bien qu'elle se lit vraiment une fois ouverte. Tout le reste — le remplissage qui constitue l'essentiel du fichier, ainsi que le contenu des autres formats d'image et d'audio — est factice. L'objectif est uniquement de tester la validation de la taille, de l'extension et du type MIME.
Questions fréquentes
Anecdote — La frontière entre un fichier « valide » et un fichier « corrompu »
La plupart des formats de fichier réservent des zones qu'un analyseur (parser) est explicitement autorisé à ignorer : les chunks inconnus du PNG, la boîte free du MP4 et l'élément Void du WebM en sont des exemples. Ces zones ont été conçues dès l'origine comme un espace réservé pour de futures extensions, que les analyseurs actuels doivent ignorer — les remplir n'endommage donc jamais le fichier.
Pour la vidéo, nous la rendons réellement lisible en plaçant de véritables images avant le remplissage. Écrire soi-même l'encodage bit à bit d'un codec est trop difficile à garantir comme correct ; nous laissons donc l'encodeur intégré du navigateur lui-même (l'API MediaRecorder) enregistrer quelques secondes d'une animation sur un canvas, puis nous ajoutons le remplissage ensuite. C'est une façon de concilier le principe « toujours renvoyer un fichier garanti valide » avec le souhait de l'utilisateur de « voir vraiment une vidéo ».
Fait intéressant, un fichier ZIP est conçu de sorte qu'il suffit de lire le « répertoire central » situé à la fin pour connaître la liste complète de son contenu. On dit que cela remonte à l'époque des bandes magnétiques, où l'on lisait à partir de la fin — et c'est encore aujourd'hui la raison pour laquelle on peut extraire très rapidement un seul fichier d'un ZIP volumineux.