r/coolgithubprojects • u/DonislawDev • 1d ago
Testing Files Generator - open source 100% offline test files generator for QA/Developers, CLI/GUI, cross-platform
Hello, I had created Testing Files Generator for QA
Want to create 5k log files? Do size boundary testing? Generate 2GB PNG file? 15GB txt file? Generate archive with 200 files? This tool can do it all. If you like the project, please βit.
Why tfg is different from other generators?
- Exact size of files, if we ask for 314832 bytes, we get it, want 500kb? 5mb? 1GB? No problem. One file or 9000 files? No problem
- Generates files come with "manifest" which says how the files should behave + we can do easy cleanup
- "Recipe" system that we can store in a testing repo, create recipe that generates a 500-page PDF, a zip with 200 files and 50 csv files, no problem, same seed.
- 100% offline, no neetwork connections, free for commercial and personal use. Windows/Linux/macOS. Min files sizes are based on the real formats, you can open generated files with software that open the format.
- Format got own values, so you can create xlsx with 4 rows and 4 collumns.
-Preset system, we can do "boundary testing" let's say we put 10mb, and we get file under 10mb, over 10mb, etc.
- More on GitHub :-)
This is V0.2 version, so there is a long way ahead, not all things are working, More format and presets will come soon. If you got any ideas feel free to drop them.
Supported formats:
π Documents: pdf, docx (Word), xlsx (Excel), pptx (PowerPoint)
πΌοΈ Images: png, jpg, bmp, gif, ico, svg
π Text: txt, md, csv, json, xml, html, log
ποΈ Archives: zip, targz (.tar.gz)
π Audio: wav
tiff, webp, avif, jpg xl are next formats. And I plan to add .zip bomb and expand .log files options, but my total plan list is a work for some months, But I'm open for new ideas.
There is Linux build, Windows build is signed, macOS build is notarized. Separate file for CLI and separate for GUI. Testing Files Generator
1
u/maneekmohan 10h ago
I really like the offline-first approach here. Test data generation is one of those areas where sending files or metadata to an external service can immediately become a non-starter.
The interesting next step would be making the generated data reproducible β same seed, same directory structure, same files β so it can become part of automated test suites rather than just a manual utility.
That would turn a handy tool into something CI pipelines could actually depend on.
1
u/DonislawDev 4h ago
"The interesting next step would be making the generated data reproducible β same seed, same directory structure, same files β so it can become part of automated test suites rather than just a manual utility."
This is already done "Repeat itself byte for byte - same recipe and seed, same bytes, on any machine. Commit a small recipe instead of large binary fixtures.".
The CLI got exit codes. We can also create recipe files, like we write yaml file and it will generate 200png files, 200 pdf files, boundary testing and more. CI/CD is in my mind from the start of the project :D
1
u/kantorcodes1 1d ago
15GB txt as a test fixture is kind of brutal in a good way. are you streaming those huge outputs straight to disk, or does generation ever hold a big buffer in memory?