A composite, illustrative scenario: a .jpg that is really text crashes a thumbnail worker, a too-strict fix blocks valid photos, and a layered check (magic bytes, then a sandboxed decode) resolves both.
A composite, illustrative scenario showing how three exact-size PDF fixtures (5,242,879 / 5,242,880 / 5,242,881 bytes) can expose silent truncation and vague error messages, plus the checks that catch them.
What changed on Dummy File Generator and how to use it: valid exact-size PDFs, DOCX/ZIP/WebP output, a Chrome extension, ready-made /download test-file pages, an /upload-limits reference, and the earlier magic-byte and scenario tools.
A fair comparison of downloading hosted sample files, generating files in the browser, and making them with truncate, fallocate, dd or mkfile: exact sizes, format validity, data flow, reproducibility and CI use.
A test set for image upload pipelines: EXIF orientation, GPS stripping, transparency, CMYK, huge dimensions, animation and size limits. With ImageMagick and exiftool commands to build each input and checks for each output.
A polyglot is one file that is valid as two formats at once, so it passes a magic-byte check as one type and is read as another. Why formats allow this, how to build a harmless probe for staging, and the defences that actually work.
On localhost every upload finishes instantly, so progress bars, cancel buttons and timeouts go untested. How to throttle uploads in DevTools and Playwright, how long a given file should take, and what to check while it runs.
Working code for setting files on upload inputs in Playwright, Cypress and Selenium, including hidden inputs, drag-and-drop zones, remote grids, and asserting on what the server actually received.
A practical setup for building a frontend before the API exists: schema-checked JSON fixtures, Mock Service Worker handlers for every UI state (including slow, huge and failed uploads), and Playwright route mocks for tests.
How a browser builds a large file (a typed array, a Blob and an object URL), where the memory goes, why this site generates on the main thread and caps files at 512 MiB, and what to use when you need gigabytes.
The extension, the Content-Type header and the magic bytes are three different claims about a file, and only one is hard to fake. How each is produced, server-side checks in Node and Python, the formats that have no signature, and a test matrix.
How we keep upload fixtures reproducible without bloating the repository: a naming scheme, a manifest of expected results, and small Node.js helpers that pad JSON and PNG files to exact sizes at test time.
The four most common test file formats hit very different code paths. How each is structured, how it behaves when padded to a target size, and the parser bugs each one is good at finding.
A practical way to turn an upload requirement into a small, complete set of test files: equivalence partitions, boundary values in bytes, a results table, and a k6 script for concurrent uploads.
Grabbing "some big PDF" from your Downloads folder misses the bugs that matter. Six concrete upload failures, how to reproduce each with a dummy file, and what the fix usually looks like.
A dummy file is a real, openable file whose contents do not matter but whose type and exact size do. Here is how one is built, how to verify it, and when a real sample is the better choice.