Gyakran szüksége lesz adatokra, hogy értelmes értékekkel tesztelje az alkalmazást. Csak használja a Gofakeit-et, hogy meghamisítsa.
A megbízható és valósághű tesztadatok kulcsfontosságúak alkalmazásai minőségének és funkcionalitásának biztosításában. A valós forgatókönyveket utánzó hamis adatok generálása hasznos készség a tesztelés számos formájához.
A szabványos könyvtárban nincs támogatás hamis adatok generálására, de sok csomag létezik a Go tágabb ökoszisztémájában. A hamis adatok generálására szolgáló népszerű csomag a Gofakeit.
A Gofakeit használatának megkezdése
A Gofakeit egy csomag hamis adatok generálására a Go programokban.
A Gofakeit széleskörű szolgáltatásokat kínál, beleértve a véletlenszerű adatgenerálást különféle típusokon. Ezenkívül testreszabható lehetőségeket biztosít az adott formátumokhoz való ragaszkodáshoz, a lokalizáció támogatásához és a valósághűséghez idő és dátum generálása.
Futtassa ezt a parancsot a projekt munkakönyvtárában, miután inicializált egy új Go-projektet, hogy hozzáadja a Gofakeit-et harmadik féltől származó függőségként:
go get github.com/brianvoe/gofakeit/v6
A Gofakeit függőségként való hozzáadása után a csomagot a következőképpen importálhatja:
import (
"github.com/brianvoe/gofakeit/v6"
)
Összességében a Gofakeit biztosítja a hamis adatgeneráló csomag legtöbb funkcióját.
Alapvető hamis adatok generálása a Gofakeit segítségével
A Gofakeit funkcionalitást biztosít különféle típusú adatok generálására, beleértve a neveket, e-maileket, telefonokat, üzleti kifejezéseket stb.
Így generálhat alapvető hamis adatokat a Gofakeit segítségével:
package main
import (
"fmt"
"github.com/brianvoe/gofakeit/v6"
)funcmain() {
// Generate a fake name
name := gofakeit.Name()
fmt.Println("Name:", name)// Generate a fake email address
email := gofakeit.Email()
fmt.Println("Email:", email)// Generate a fake phone number
phone := gofakeit.Phone()
fmt.Println("Phone:", phone)// Generate a fake company name
company := gofakeit.Company()
fmt.Println("Company:", company)// Generate a fake credit card number
creditCard := gofakeit.CreditCardNumber()
fmt.Println("Credit Card:", creditCard)// Generate a fake hacker phrase
hackerPhrase := gofakeit.HackerPhrase()
fmt.Println("Hacker Phrase:", hackerPhrase)// Generate a fake job title
jobTitle := gofakeit.JobTitle()
fmt.Println("Job Title:", jobTitle)
// Generate a fake currency abbreviation
currency := gofakeit.CurrencyShort()
fmt.Println("Currency:", currency)
}
A fő- függvény számos hamis értéket generál a Gofakeit segítségével, és kinyomtatja azokat a konzolra a Println funkció a fmt csomag.
A Gofakeit struct címkéket biztosít hamis adatok generálásához különböző mezőkhöz. Amikor ezeket a struct címkéket használja, a Gofakeit hamis adatokkal inicializálja a mezőket.
import (
"fmt"
"time""github.com/brianvoe/gofakeit/v6"
)type Person struct {
ID string`fake:"{uuid}"`
FirstName string`fake:"{firstname}"`
LastName string`fake:"{lastname}"`
Age int`fake:"{number: 18,60}"`
Email string`fake:"{email}"`
Address string`fake:"{address}"`
CreatedAt time.Time `fake:"{date}"`
}funcmain() {
var person Persongofakeit.Struct(&person)
fmt.Printf("ID: %s\\n", person.ID)
fmt.Printf("First Name: %s\\n", person.FirstName)
fmt.Printf("Last Name: %s\\n", person.LastName)
fmt.Printf("Age: %d\\n", person.Age)
fmt.Printf("Email: %s\\n", person.Email)
fmt.Printf("Address: %s\\n", person.Address)
fmt.Printf("Created At: %s\\n", person.CreatedAt)
}
A mezők a Személy struktúra mind rendelkezik hamisítvány struct címkék. Ban,-ben fő- funkció, a személy változó a Person struktúra egy példánya.
A gofakeit. Struktúra metódus egy struktúra exportált elemeit véletlenszerű adatokkal tölti ki az értéke alapján hamisítvány az exportált mezők címkéje. A fő- függvény ezután kiírja a struct mezőket a konzolra.
Összetett hamis adatok generálása
A Gofakeit segítségével összetett hamis adatokat generálhat, beleértve véletlenszerű mondatokat, bekezdéseket és lorem ipsum-ot a Mondat, Bekezdés, és LoremIpsumParagraph funkciókat, ill.
package main
import (
"fmt""github.com/brianvoe/gofakeit/v6"
)funcgenerateRandomSentence()string {
// Generate a random sentence with 6 words
sentence := gofakeit.Sentence(6)
return sentence
}funcgenerateRandomParagraph()string {
// Generate a random paragraph with 3 sentences, each having 4 to 8 words
paragraph := gofakeit.Paragraph(3, 4, 8, "/n")
return paragraph
}funcgenerateLoremIpsum()string {
// Generate 2 paragraphs of lorem ipsum text, each having 3 to 5 sentences
loremIpsum := gofakeit.LoremIpsumParagraph(3, 5, 12, "\\n")
return loremIpsum
}funcmain() {
// Set up the random seed for consistent results (optional)
gofakeit.Seed(0)// Generate and print random sentence
fmt.Println("Random Sentence:")
fmt.Println(generateRandomSentence())// Generate and print random paragraph
fmt.Println("\\nRandom Paragraph:")
fmt.Println(generateRandomParagraph())
// Generate and print lorem ipsum text
fmt.Println("\\nLorem Ipsum Text:")
fmt.Println(generateLoremIpsum())
}
A generál RandomSentence függvény egy véletlenszerű mondatot generál a Gofakeit-vel Mondat funkció. A gener RandomParagraph függvény egy véletlenszerű bekezdést generál a Bekezdés funkció.
A gener LoremIpsum függvény egy véletlenszerű lorem ipsum bekezdést generál a LoremIpsumParagraph funkció.
A fő- függvény meghívja a generateRandomSentence, generateRandomParagraph és generateLoremIpsum függvényeket. A program kiírja a függvény kimeneteit a konzolra.
Hamis adatokat generálhat adatbázisa teszteléséhez
A Gofakeit dinamikus adatgenerálással leegyszerűsíti a tesztelést, hogy biztosítsa a különféle követelményekkel való kompatibilitást.
A Go beépített adatbázis-/sql-csomagjával feltöltheti SQL-adatbázisát hamis adatokkal tesztelés céljából. Ez segíthet több éles eset tesztelésében és az adatbázis biztonságának javításában.