Întrebări frecvente
Licență, confidențialitate, reproductibilitate și lucrurile pe care oamenii le verifică înainte să pună un generator într-un pipeline de build. Dacă întrebarea ta nu e aici, sistemul de issue-uri este deschis.
Prin ce diferă de dd, fsutil sau truncate?
Acelea îți dau un fișier de dimensiunea potrivită, plin de nimic. Un fișier de 2 MB numit photo.png făcut așa nu este un PNG, deci tot ce îl analizează cu adevărat îl respinge din motivul greșit, iar testul tău trece apoi tot din motivul greșit. Acesta produce un PNG real de exact 2 MB care se deschide într-un vizualizator de imagini și vine cu o declarație despre cum trebuie să îl trateze sistemul tău.
tfg generate --format png --size 2mb --out ./fixtures
Este gratuit și îl pot folosi la serviciu?
Da la amândouă. Este publicat sub GPL-3.0 și nu costă nimic. Nu există cont, cheie de licență sau nivel plătit.
Pot folosi fișierele generate într-un produs cu cod închis?
Da. Licența acoperă codul instrumentului, nu ce produce el. Fișierele, rețetele și manifestele generate sunt rezultat și nu lucrări derivate, deci le poți comite și distribui fără nicio obligație.
Conțin fișierele generate date personale reale?
Nu. Tot ce se află în ele este sintetizat dintr-un seed. Nu se citește niciun set de date, nu se contactează niciun serviciu și nu se încorporează conținut de la terți. Tratează o adresă de e-mail generată ca inutilizabilă, nu ca neutilizată, pentru că orice șir aleatoriu poate coincide din întâmplare cu una reală.
Voi obține exact aceleași fișiere pe altă mașină?
Da, octet cu octet, cu aceeași rețetă și același seed. Proiectul testează asta la fiecare modificare, iar încălcarea ei cere o versiune majoră. Asta îți permite să comiți o rețetă mică în loc de fixture-uri binare mari.
Are nevoie de conexiune la internet?
Niciodată. Nu există telemetrie, verificare de actualizări sau client cloud, iar binarul liniei de comandă nu are compilat în el niciun stack de rețea. Funcționează pe o mașină fără rețea și într-un mediu corporativ închis.
Ce se întâmplă dacă cer o dimensiune pe care un format nu o poate atinge?
Primești o eroare care numește formatul, cea mai mică dimensiune posibilă, motivul acelui prag și ce să faci în loc, și nu se scrie niciun fișier. Instrumentul nu rotunjește niciodată o dimensiune pe tăcute. Fiecare prag este listat în pagina de formate.
tfg formats png
Pot genera un fișier stricat în mod deliberat?
Da. Adaugă --damage zero-head și fișierul iese cu exact mărimea cerută, cu primii octeți suprascriși cu zerouri, așa că un cititor îl respinge, iar manifestul spune că sistemul tău trebuie să îl respingă. Detaliile sunt pe pagina despre fișierele de test corupte.
tfg generate --format png --size 2mb --damage zero-head --out ./out
Ce formate urmează?
7z, mp3 și mp4. Azi funcționează de la un capăt la altul 26 formate.
Pe ce sisteme îl pot rula?
Linia de comandă rulează pe Windows și Linux, atât pe Intel, cât și pe ARM, și pe Mac-uri cu Apple Silicon. Fereastra desktop este livrată pentru Windows pe Intel, Linux pe Intel și Mac-uri cu Apple Silicon. Mac-urile Intel nu sunt acceptate și nu se construiește nimic pentru ele.
Trebuie să instalez ceva?
Nu. Descarcă arhiva pentru sistemul tău, dezarhiveaz-o și rulează binarul. Nu există instalator, mediu de execuție de adăugat sau dependență de rezolvat. Dacă ai Go, funcționează și o singură comandă go install.
go install github.com/donislawdev/TestingFilesGenerator/cmd/tfg@latest
De ce o rulare peste mii de fișiere este mai lentă pe Windows?
Pentru că Windows cere mai mult pentru fiecare cale pe care o examinează, iar o comandă care parcurge mii de fișiere examinează mii de căi. Măsurat pe o mașină cu 3000 de fișiere de 1 kB, verify durează aproximativ 0,9 secunde pe Windows și aproximativ 0,2 secunde pe Linux într-un container. O cale de ieșire mai scurtă micșorează cifra de pe Windows, pentru că fiecare folder de deasupra fișierelor face parte din ce se examinează.
Încă te decizi?
Pagina de cazuri de utilizare arată sarcinile pentru care a fost făcut, iar pagina de formate listează fiecare format cu cel mai mic fișier pe care îl poate produce. README-ul din repository este referința completă.
Gratuit și open source, GPL-3.0. Fără cont. Descărcările pentru Windows și macOS sunt semnate și pornesc fără avertisment.