Generirati fiktivni JSON skup podataka
- Nadzorna ploča
- Dokumentacija
- API
Za što se koriste lažni podaci?
Potreba se javlja u svim fazama razvojnog ciklusa. Za demo, potrebni su nam korisnici vjerojatan, ne skraćen Lorem Ipsum. Za integracijske testove želimo skup podataka ponovljiv, ali raznolik. Za predprodukcijsko okruženje izolirano od GDPR-a, zamjenjujemo podatke pravi umjetnim ekvivalentima. Za model korisničkog sučelja, morate popuniti tablice s unosima vjerodostojan. Lažni generator podataka pokriva te slučajeve proizvodnjom JSON zapisi u skladu s jednostavnom shemom.
Format dijagrama
Shema je JSON objekt gdje je svaki ključ naziv proizvedenog polja, a vrijednost je lažni tip. od strane primjer:
{
"ime": "ime",
"e-pošta": "e-pošta",
"dob": "broj 18-65",
"aktivan": "booleov",
"registered_on": "datum"
}
Alat zatim generira N snimaka u skladu s ovom shemom, na odabranom jeziku (francuski ili engleski). Rezultat je JSON niz koji se može koristiti izravno kao fixture, kao tijelo zahtjeva API, ili kao unos za sijač baze podataka.
Podržane vrste
- ime: puno ime (“Marie Dupont”).
- ime / prezime: ime i prezime odvojeni.
- e-mail: lažna adresa e-pošte (koristi
safeEmailod Fakera, koji proizvodi rezervirane domeneexample.comnisu dostupne). - telefon: lokalno formatirani telefonski broj.
- adresa: puna poštanska adresa.
- broj: nasumični cijeli broj između 0 i 1000 prema zadanim postavkama ili
broj a-bza personalizirani asortiman. - boolean:
trueilifalsenasumično. - datum: datum u formatu ISO 8601 (
GGGG-MM-DD). - uuid: UUID v4.
- tekst: kratki lorem-ipsumesque odlomak (~120 znakova).
- string: tri nasumične riječi.
- url: lažni URL (
https://example.org/...).
Svi neprepoznati tipovi ostaju takvi kakvi jesu u rezultatu. To je izbor: ako stavite
"role": "admin" u shemi, svaki će zapis imati "role": "admin". Ovo
omogućuje vam miješanje konstantnih vrijednosti i dinamičkih polja bez mijenjanja alata.
Izbor lokacije
Faker ima desetke lokala. Alat izlaže dva najkorisnija u kontekstu francuski govorni:
- fr_FR: francuska imena, francuske adrese, telefonski brojevi u francuskom formatu, lorem-ipsum rečenice na približnom francuskom.
- en_US: Američka imena i adrese, telefonski brojevi u američkom formatu.
Za demonstraciju dosljednosti na francuskoj strani odaberite fr_FR. Za probu
internacionalizaciju, pomiješajte dva izvršenja ili povećajte broj zapisa
iz raznih podrijetla.
Slučajevi upotrebe
- Testni popravci: generirajte 50 korisnika, zalijepite ih u YAML datoteku iz AliceBundlea ili sijača. Može se reproducirati kada postavite Faker seed, inače varirati.
- Mockups korisničkog sučelja: ispunite React/Vue tablicu uvjerljivim podacima. Puno
smisleniji od praznog niza ili
foo / bar / baz. - Testno opterećenje: generirajte veliki JSON sadržaj za test propusnosti (k6, JMeter, skakavac).
- Komercijalne demonstracije: popunite demo instancu unosima koji nalikuju stvarnim slučajevima, ali ne riskiraju curenje osjetljivih informacija.
- Anonimizacija: zamijeni proizvodni izvoz lažnim ekvivalentom prije podijelite ga s podizvođačem ili ga upotrijebite u pretprodukciji.
Dobrovoljna ograničenja
Kako bi ostao jednostavan za korištenje, alat ne podržava ugniježđene sheme (polje koje bi samo po sebi bilo
objekt ili niz objekata). Za takve potrebe bolje je napisati namjensku Faker skriptu, ili
birajte nekoliko uzastopnih poziva. Dobrovoljno ograničenje također izbjegava apsurdne kombinacije
("items": "name" sa slučajnom kardinalnošću) što bi alat učinilo manje predvidljivim.
Broj zapisa ograničen je na 500. Osim toga, očekujemo okruženje od testirajte da generira svoje uređaje putem namjenskog koda (Faker u CLI, Foundry, factory_bot, itd.). Web alat koristan je za do nekoliko stotina zapisa; osim toga, memorija i vrijeme odziva plato iskustvo.
Ponovljivost i sigurnost
Vrijednosti se proizvode s nedeterminističkim PRNG-om: svako izvršenje proizvodi podatke drugačiji. Za testove koji moraju biti ponovljivi (CI), uhvatite izlaz jednom i počiniti to. Za doista osjetljive podatke (anonimizacija proizvodnje), imajte na umu da javno generiranje na strani poslužitelja nije pravi kanal: preferirajte lokalnu skriptu koja nikada ne izlazi vaš položaj.
Često postavljana pitanja
Jesu li generirane e-poruke važeće?
Format je valjan (RFC 5322), ali domena je example.com ili ekvivalentno rezervirano
od strane IANA-e. Nijedna od ovih adresa e-pošte ne može primati poruke; ovo je dobrovoljno kako bi se izbjegla neželjena pošta
slučajno na stvarnim adresama.
Mogu li dobiti isti skup podataka više puta?
Ne putem web sučelja: alat ne postavlja početnu vrijednost. Za striktnu ponovljivost, skriptirajte
lokalna generacija s Fakerom i fiksnim sjemenom ($faker->seed(1234);).
Kako generirati ugniježđeni objekt?
Alat podržava samo ravni dijagram. Za ugrađene, naknadno obradite izlaz skriptom ili izravno napisati odgovarajući Faker kod.
Zašto su svi moji brojevi između 0 i 1000?
Ovo je zadani raspon. Navedite raspon: "dob": "broj 18-65",
"cijena": "broj 1-9999" itd.
Koje su veze s drugim alatima na web mjestu?
Za količinske UUID-ove, pogledajte UUID generator. Za zaporke, generator zaporki. Za tekst, generator teksta. Lažni generator podataka je alat transverzala koja spaja nekoliko ovih generacija.
Primjer zahtjeva
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"}'
Ulazna shema
| Polje | Tip | Obavezno | Zadano |
|---|---|---|---|
schema |
text | ✓ | {"name": "name", "email": "email", "age": "number 18-65"} |
count |
integer | ✓ | 5 |
locale |
choice (fr_FR, en_US) | ✓ | fr_FR |
Krajnje točke
GET https://cdrn.fr/api/v1/tools- ispisuje sve dostupne alateGET https://cdrn.fr/api/v1/tools/mock-data-generator- dohvaća shemu ovog alataPOST https://cdrn.fr/api/v1/tools/mock-data-generator/execute- izvršava ovaj alat s JSON payloadom