Testing Files Generator
Čeština

Generujte skutečné testovací soubory v přesné velikosti

PDF, PNG, DOCX, ZIP - celkem 26 formátů a každý je skutečný soubor, který se otevře v programu, kam patří, v přesně té velikosti, o kterou jste požádali. Každý běh také zapisuje, co má vaše aplikace s každým souborem udělat. Příkazový řádek a desktopové okno, zdarma a open source, celé na vašem počítači.

Zdarma a open source, GPL-3.0. Žádná registrace. Stažené soubory pro Windows a macOS jsou podepsané a spustí se bez varování.

Desktopové okno Testing Files Generator připravené zapsat dávku testovacích souborů
Desktopové okno připravené zapsat dávku souborů. Za příkazovým řádkem běží stejný motor.

Problém

Vytvořit jeden testovací soubor je snadné. Vytvořit těch správných tisíc je ta únavná část

Testujete software, který přijímá soubory od lidí. Dříve nebo později budete potřebovat:

To je to, co toto nahrazuje. Je určeno pro QA inženýry, automatizaci testů a každého, za jehož kódem stojí formulář pro nahrávání, importní rutina, parser nebo kvóta úložiště.

Čím se liší

Jiné generátory končí u bajtů. Tento odpovídá na to, na co se váš test skutečně ptá

Složka souborů vás stále nechává rozhodovat, co má který dokazovat. Každý běh tady zapíše vedle souborů manifest.json - prostý seznam všeho vytvořeného a u každé položky deklarované očekávání.

Řekněme, že váš endpoint pro nahrávání povoluje 1 MB. Požádejte o tři soubory, které leží na té hranici:

tfg generate --preset size-boundaries --limit 1mb --spread 1B --format pdf --out ./edges
SouborBajtyVáš systém máProtože
1mb_under_1b.pdf1048575přijmoutje uvnitř limitu
1mb_at_limit.pdf1048576přijmoutsamotný limit je povolen
1mb_over_1b.pdf1048577odmítnoutsize_limit

Tři soubory, tři různé odpovědi, ve strojově čitelné podobě. Váš test čte manifest místo toho, abyste vy ručně psali aserce:

import json, os

directory = "edges"
manifest = json.load(open(os.path.join(directory, "manifest.json")))

for entry in manifest["files"]:
    response = upload(os.path.join(directory, entry["path"]))
    outcome = entry["expected"]["outcome"]
    if outcome == "accept":
        assert response.ok, entry["path"]
    elif outcome == "reject":
        assert not response.ok, entry["path"]

Kde odpověď závisí na vaší vlastní politice, manifest to říká

Zapíše unspecified, místo aby vymýšlel očekávání. Generátor, který hádá, vytváří falešná selhání a sada testů, která křičí vlk, bude vypnuta.

Předvolby

Vyberte otázku, získejte celou sadu

Předvolba je sada testovacích souborů navržená kolem jedné testovací otázky, abyste nemuseli vymýšlet, které soubory co dokazují. Každá má stránku, která říká, co obvykle najde, co je v sadě a jaké nastavení přijímá.

Všechny předvolby a jak souvisejí s recepty

Rychlý start

Tři příkazy, abyste to viděli fungovat

  1. Vytvořte soubor

    Jedno PNG, přesně dva megabajty:

    tfg generate --format png --size 2mb --out ./fixtures
  2. Vytvořte hodně souborů

    Deset tisíc souborů logu, každý mezi jedním a osmi kilobajty, s velikostmi losovanými ze seedu, aby zítra vyšla stejná sada. Dejte každému běhu vlastní adresář - manifest je jediný záznam o tom, co běh zapsal, takže nástroj odmítne zapsat druhý přes něj:

    tfg generate --format log --size-range 1kb-8kb --count 10000 --out ./logs
  3. Ověřte je a pak je odstraňte

    verify vám řekne, že se nic nepohnulo. cleanup odstraní přesně to, co bylo zapsáno, a nic jiného:

    tfg verify ./logs/manifest.json
    tfg cleanup ./logs/manifest.json --yes

Velikosti se počítají po 1024, jak to dělá váš správce souborů, takže 2mb znamená 2097152 bajtů. Funguje i prostý počet bajtů. Dokumentace pokrývá recepty, manifest a návratové kódy.

Co získáte

Vytvořeno pro sadu testů, která běží bez dozoru

Stažení

Vyberte verzi pro svůj systém

Rozbalte archiv a spusťte ho. tfg je příkazový řádek a tfg-gui je desktopové okno. Není tu instalátor a nic, co by se do vašeho počítače přidávalo.

Systém Příkazový řádek Desktopové okno
Windows amd64, arm64 amd64
Linux amd64, arm64 amd64
macOS arm64 arm64

Co je podepsáno a co ne

Soubory ke stažení pro Windows a macOS jsou podepsané, takže se spustí bez varování o neznámém vývojáři. Ty pro Linux ne, protože desktopový Linux nemá ekvivalent, kterým by je šlo podepsat. Každý archiv je uveden v verify-SHA256SUMS.txt na stránce vydání, takže můžete ověřit, co jste stáhli.

Zdarma a open source, GPL-3.0. Žádná registrace. Stažené soubory pro Windows a macOS jsou podepsané a spustí se bez varování.