Как сгенерировать фиктивные тестовые данные с помощью Go

Как сгенерировать фиктивные тестовые данные с помощью Go Picture 1

Реалистичные и надежные тестовые данные играют ключевую роль в обеспечении качества и функциональности приложения. Создание фиктивных данных, имитирующих реальный сценарий, является полезным навыком для многих форм тестирования.

В стандартной библиотеке нет поддержки создания фиктивных данных, но в более широкой экосистеме Go существует множество пакетов. Популярным пакетом для создания фиктивных данных является Gofakeit.

Начать работу с Gofakeit

Как сгенерировать фиктивные тестовые данные с помощью Go Picture 2

Gofakeit — это пакет, который генерирует фиктивные данные в программе Go. Gofakeit предоставляет богатые возможности, включая генерацию случайных данных с доступом к разным типам. Он также предлагает параметры настройки для соблюдения определенных стандартов форматирования, поддержку локализации и генерацию данных в реальном времени.

Запустите эту команду в рабочем каталоге вашего проекта, после чего вы создали новый проект Go, чтобы добавить Gofakeit в качестве сторонней зависимости:

зайди на github.com/brianvoe/gofakeit/v6

После добавления Gofakeit в качестве зависимости вы можете импортировать пакет следующим образом:

импортировать ( “github.com/brianvoe/gofakeit/v6” )

В целом, Gofakeit обеспечивает большую часть функциональности пакета генерации фиктивных данных.

Сгенерируйте поддельные данные с помощью Gofakeit

Gofakeit предоставляет функциональные возможности для создания различных типов данных, включая имя, адрес электронной почты, телефон и бизнес-этапы…

Вот как вы можете создать фиктивные данные с помощью Gofakeit:

пакет main import ( “fmt” “github.com/brianvoe/gofakeit/v6” ) func main() { // Tạo tên giả name := gofakeit.Name() fmt.Println(“Name:”, name) // Tạo địa chỉ email giả email := gofakeit.Email() fmt.Println(“Email:”, email) // Tạo số điện thoại giả phone := gofakeit.Phone() fmt.Println(“Phone:”, phone) // Tạo tên công ty giả company := gofakeit.Company() fmt.Println(“Company:”, company) // Tạo số thẻ tín dụng giả CreditCard := gofakeit.CreditCardNumber() fmt.Println(“Кредитная карта: “, CreditCard) // То есть хакерская фраза hackerPhrase := gofakeit.HackerPhrase() fmt.Println(“Фраза хакера:”, hackerPhrase) // То есть хакерская фраза jobTitle := gofakeit.JobTitle() fmt.Print пер( “Job Title:”, jobTitle) // Tạo ký hiệu viết tắt tiền tệ giả currency := gofakeit.CurrencyShort() fmt.Println(“Currency:”, currency) }

Основная функция генерирует какие-то фиктивные значения с помощью Gofakeit и выводит их на консоль с помощью функции Println из пакета fmt.

Gofakeit предоставляет структурные теги для создания фиктивных данных для разных полей. При использовании тега struct Gofakeit инициализирует поля фиктивными данными.

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}”` Строка электронной почты `fake:”{email}”` Строка адреса `fake:”{адрес}”` CreatedAt time.Time `fake :”{date}”` } func main() { var person Person gofakeit.Struct(&person) fmt.Printf(“ID: %sn”, person.ID) fmt.Printf(“Имя: %sn”, person .FirstName) fmt.Printf(“Фамилия: %sn”, person.LastName) fmt.Printf(“Возраст: %dn”, person.Age) fmt.Printf(“Электронная почта: %sn”, person.Email) fmt .Printf(“Адрес: %sn”, person.Address) fmt.Printf(“Создано в: %sn”, person.CreatedAt) }

Все поля структуры Person имеют тег фиктивной структуры. В основной функции переменная person является экземпляром структуры Person.

Метод gofakeit.Struct заполняет экспортированные элементы структуры случайными данными на основе значения поддельного тега экспортируемых полей. Затем основная функция выводит поля структуры на консоль.

Как сгенерировать фиктивные тестовые данные с помощью Go Picture 3

Создание сложных фиктивных данных

С помощью Gofakeit можно генерировать сложные псевдоданные, состоящие из случайных предложений, абзацев и lorem ipsums с функциями Sentence, Paragraph и LoremIpsumParagraph соответственно.

package main import ( “fmt” “github.com/brianvoe/gofakeit/v6” ) func generateRandomSentence() string { // Tạo câu ngẫu nhiên bằng 6 từ предложение := gofakeit.Sentence(6) вернуть предложение } func generateRandomParagraph() string { // Tạo đoạn ngẫu nhiên bằng 3 câu, mỗi câu có từ 4 tới 8 từ параграф := gofakeit.Paragraph(3, 4, 8, “/n”) return абзац } func generateLoremIpsum() string { // Tạo 2 đoạn text lorem ipsum, mỗi đoạn có từ 3 tới 5 câu loremIpsum := gofakeit.LoremIpsumParagraph(3, 5, 12, “n”) return loremIpsum } func main() { // Thiết lập seed ngẫu n хиен чо кот квинт quán (tùy chọn) gofakeit.Seed(0) // Tạo và in câu ngẫu nhiên fmt.Println(“Случайное предложение:”) fmt.Println(generateRandomSentence()) // Tạo và in đoạn ngẫu nhiên fmt.Println( ” nRandom Paragraph:”) fmt.Println(generateRandomParagraph()) // То есть в тексте lorem ipsum fmt.Println(“nLorem Ipsum Text:”) fmt.Println(generateLoremIpsum()) }

Функция generateRandomSentence генерирует случайное предложение с помощью функции Sentence от Gofakeit. Функция generateRandomParagraph генерирует случайный фрагмент с помощью функции Paragraph.

Функция generateLoremIpsum генерирует случайный lorem ipsum с помощью функции LoremIpsumParagraph.

Основная функция вызывает generateRandomSentence, generateRandomParagraph и generateLoremIpsum. Эта функция выводит результаты на консоль.

Gofakeit упрощает процесс тестирования, генерируя динамические данные, чтобы гарантировать соответствие различным требованиям. Надеюсь, эта статья поможет вам лучше понять этот процесс.

Похожие записи

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *