Generovať fiktívny JSON dataset
- Dashboard
- Dokumentácia
- API
Na čo slúžia falošné dáta?
Potreba sa vracia vo všetkých fázach vývojového cyklu. Pre demo potrebujeme plausibilných užívateľov, nie orezaný Lorem Ipsum. Pre integračné testy chceme reprodukovateľný, ale rozmanitý dataset. Pre pre-production izolovanú od GDPR nahrádzame skutočné dáta falošnými ekvivalentmi. Pre UI maketu treba populovať tabuľky vierohodnými záznamami. Generátor falošných dát pokrýva tieto prípady produkciou JSON záznamov v súlade s jednoduchou schémou.
Formát schémy
Schéma je JSON objekt, kde každý kľúč je názov produkovaného poľa a hodnota je Faker typ. Napríklad:
{
"name": "name",
"email": "email",
"age": "number 18-65",
"active": "boolean",
"registered_on": "date"
}
Nástroj potom generuje N záznamov rešpektujúcich túto schému, vo vybranej locale (francúzština alebo angličtina). Výsledok je JSON pole použiteľné priamo ako fixture, ako body API požiadavky, alebo ako vstup database seeder.
Podporované typy
- name: kompletné meno ("Marie Dupont").
- firstName / lastName: krstné meno a priezvisko oddelene.
- email: falošná emailová adresa (používa
safeEmailz Faker, ktorý produkuje rezervované doményexample.combez možnosti doručenia). - phone: telefónne číslo formátované podľa locale.
- address: kompletná poštová adresa.
- number: náhodné celé číslo medzi 0 a 1000 defaultne, alebo
number a-bpre vlastný rozsah. - boolean: náhodné
truealebofalse. - date: dátum vo formáte ISO 8601 (
YYYY-MM-DD). - uuid: UUID v4.
- text: krátky lorem-ipsum odsek (~120 znakov).
- string: tri náhodné slová.
- url: falošné URL (
https://example.org/...).
Akýkoľvek nerozpoznaný typ je zachovaný tak, ako je vo výsledku. Je to voľba: ak do schémy vložíte
"role": "admin", každý záznam bude mať "role": "admin". To
umožňuje miešať konštantné hodnoty a dynamické polia bez zmeny nástroja.
Voľba locale
Faker disponuje desiatkami locale. Nástroj exponuje dve najužitočnejšie vo frankofónnom kontexte:
- fr_FR: francúzske mená, francúzske adresy, telefónne čísla francúzskeho formátu, lorem-ipsum vety v približnej francúzštine.
- en_US: americké mená a adresy, telefónne čísla US formátu.
Pre koherenciu francúzskej demonštrácie zvoľte fr_FR. Pre test
internacionalizácie miešajte oba behy alebo zvýšte počet records na získanie
rozmanitosti pôvodov.
Prípady použitia
- Test fixtures: generovať 50 užívateľov, vložiť ich do AliceBundle YAML súboru alebo seeder. Reprodukovateľné, keď fixujeme Faker seed, inak rozmanité.
- UI makety: vyplniť React/Vue tabuľku plausibilnými dátami. Oveľa
výrečnejšie ako prázdna tabuľka alebo
foo / bar / baz. - Load testing: generovať objemný JSON payload pre test priepustnosti (k6, JMeter, Locust).
- Komerčné demá: populovať demo inštanciu so záznamami, ktoré sa podobajú reálnym prípadom, ale neriskujú únik citlivých informácií.
- Anonymizácia: nahradiť production export falošným ekvivalentom pred jeho zdieľaním so subdodávateľom alebo použitím v pre-production.
Zámerné limity
Aby zostal jednoduchý na použitie, nástroj nepodporuje vnorené schémy (pole, ktoré by samo bolo
objektom alebo poľom objektov). Pre takéto potreby je lepšie napísať dedikovaný Faker skript, alebo
skladať niekoľko za sebou idúcich volaní. Zámerný limit tiež zabraňuje absurdným kombináciám
("items": "name" s náhodnou kardinalitou), ktoré by robili nástroj menej predvídateľným.
Počet záznamov je obmedzený na 500. Nad tým sa očakáva, že testovacie prostredie generuje svoje fixtures dedikovaným kódom (Faker v CLI, Foundry, factory_bot, atď.). Webový nástroj je užitočný do niekoľko sto records; nad tým pamäť a doba odpovede obmedzujú zážitok.
Reprodukovateľnosť a bezpečnosť
Hodnoty sú produkované nedeterministickým PRNG: každé spustenie produkuje odlišné dáta. Pre testy, ktoré musia byť reprodukovateľné (CI), zachyťte výstup raz a commitnite ho. Pre skutočne citlivé dáta (production anonymizácia) majte na pamäti, že generovanie na strane verejného servera nie je správny kanál: preferujte lokálny skript, ktorý nikdy neopustí váš stroj.
Často kladené otázky
Sú generované emaily validné?
Formát je validný (RFC 5322), ale doména je example.com alebo ekvivalent rezervovaný
IANA. Žiadny z týchto emailov nemôže prijať správu; je to zámerné na zabránenie náhodnému spamu
na skutočné adresy.
Môžem získať rovnaký dataset niekoľkokrát?
Nie cez webové rozhranie: nástroj nefixuje seed. Pre striktnú reprodukovateľnosť skriptujte
generovanie lokálne s Faker a fixným seedom ($faker->seed(1234);).
Ako generovať vnorený objekt?
Nástroj podporuje iba plochú schému. Pre vnorené post-spracujte výstup skriptom alebo napíšte priamo zodpovedajúci Faker kód.
Prečo sú všetky moje čísla medzi 0 a 1000?
Je to defaultný rozsah. Upresnite rozsah: "age": "number 18-65",
"price": "number 1-9999", atď.
Aké sú jeho väzby na ďalšie nástroje stránky?
Pre UUID v množstve viď generátor UUID. Pre heslá generátor hesiel. Pre text generátor textu. Mock data generator je transverzálny nástroj, ktorý kombinuje niekoľko z týchto generácií.
Ukážka požiadavky
curl -X POST https://cdrn.fr/api/v1/tools/mock-data-generator/execute \
-H "Content-Type: application/json" \
-d '{"schema":"{\"name\": \"name\", \"email\": \"email\", \"age\": \"number 18-65\"}","count":5,"locale":"fr_FR"}'
Vstupná schéma
| Pole | Typ | Povinné | Predvolené |
|---|---|---|---|
schema |
text | ✓ | {"name": "name", "email": "email", "age": "number 18-65"} |
count |
integer | ✓ | 5 |
locale |
choice (fr_FR, en_US) | ✓ | fr_FR |
Koncové body
GET https://cdrn.fr/api/v1/tools- vypíše všetky dostupné nástrojeGET https://cdrn.fr/api/v1/tools/mock-data-generator- získa schému tohto nástrojaPOST https://cdrn.fr/api/v1/tools/mock-data-generator/execute- spustí tento nástroj s JSON payloadom