Często będziesz potrzebować danych, aby przetestować swoją aplikację za pomocą znaczących wartości. Po prostu użyj Gofakeit, aby to dla ciebie sfałszować.

Wiarygodne i realistyczne dane testowe mają kluczowe znaczenie dla zapewnienia jakości i funkcjonalności Twoich aplikacji. Generowanie fałszywych danych, które naśladują rzeczywiste scenariusze, jest przydatną umiejętnością w wielu formach testowania.

W standardowej bibliotece nie ma obsługi generowania fałszywych danych, ale w szerszym ekosystemie Go istnieje wiele pakietów. Jednym z popularnych pakietów do generowania fałszywych danych jest Gofakeit.

Pierwsze kroki z Gofakeit

Gofakeit to pakiet do generowania fałszywych danych w programach Go.

Gofakeit oferuje rozbudowane funkcje, w tym generowanie losowych danych różnych typów. Zapewnia również konfigurowalne opcje przestrzegania określonych formatów, obsługę lokalizacji i realistyczne generowanie czasu i daty.

Uruchom to polecenie w katalogu roboczym swojego projektu, po zainicjowaniu nowego projektu Go, aby dodać Gofakeit jako zależność innej firmy:

instagram viewer
go get github.com/brianvoe/gofakeit/v6

Po dodaniu Gofakeit jako zależności możesz zaimportować pakiet w następujący sposób:

import (
"github.com/brianvoe/gofakeit/v6"
)

Ogólnie rzecz biorąc, Gofakeit zapewnia większość funkcji pakietu do generowania fałszywych danych.

Generowanie podstawowych fałszywych danych za pomocą Gofakeit

Gofakeit zapewnia funkcjonalność do generowania różnego rodzaju danych, w tym nazwisk, e-maili, telefonów, zwrotów biznesowych itp.

Oto jak możesz wygenerować podstawowe fałszywe dane za pomocą Gofakeit:

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)
}

The główny generuje kilka fałszywych wartości za pomocą Gofakeit i drukuje je na konsoli za pomocą Drukuj ln funkcja od pakiet fmt.

Gofakeit udostępnia tagi struct do generowania fałszywych danych dla różnych pól. Gdy użyjesz tych znaczników struktury, Gofakeit zainicjuje swoje pola fałszywymi danymi.

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 Person

gofakeit.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)
}

Pola Osoba wszystkie struktury mają podróbka znaczniki struktury. w główny funkcja, tzw osoba zmienna jest instancją struktury Person.

The fałszerstwo. Struktura Metoda wypełnia wyeksportowane elementy struktury losowymi danymi na podstawie wartości podróbka znacznik wyeksportowanych pól. The główny funkcja następnie drukuje pola struktury w konsoli.

Generowanie złożonych fałszywych danych

Za pomocą Gofakeit możesz generować złożone fałszywe dane, w tym losowe zdania, akapity i lorem ipsum Zdanie, Ustęp, I LoremIpsumParagraf odpowiednio funkcje.

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())
}

The wygeneruj losowe zdanie funkcja generuje losowe zdanie z Gofakeit Zdanie funkcjonować. The wygeneruj losowy akapit funkcja generuje losowy akapit z Ustęp funkcjonować.

The wygeneruj LoremIpsum funkcja generuje losowy akapit lorem ipsum z LoremIpsumParagraf funkcjonować.

The główny Funkcja wywołuje funkcje generateRandomSentence, generateRandomParagraph i generowanieLoremIpsum. Program drukuje dane wyjściowe funkcji na konsoli.

Możesz generować fałszywe dane, aby przetestować swoją bazę danych

Gofakeit upraszcza testowanie dzięki dynamicznemu generowaniu danych, aby zapewnić zgodność z różnymi wymaganiami.

Możesz użyć wbudowanego pakietu bazy danych/sql Go, aby wypełnić bazę danych SQL fałszywymi danymi do testowania. Może to pomóc w przetestowaniu większej liczby przypadków brzegowych i poprawie bezpieczeństwa bazy danych.