「GoCN酷Go推荐」Gofakeit 数据生成工具

Gofakeit是一个用Go编写的随机数据生成工具,提供丰富的内置函数(如File, Person, Address等)和自定义功能,适用于测试数据生成。其特点包括高性能、无依赖、支持struct标签和全局rand设置,还内置HTTP服务器和命令行工具。" 127978331,11320267,Elasticsearch实战:从入门到精通(基础篇),"['elasticsearch', 'lucene', 'java', 'restful', 'kibana', 'ik分词器', '数据管理', '集群部署']
摘要由CSDN通过智能技术生成

Gofakeit 是一款Go语言编写的随机数据生成工具,使用更易用的接口设计,可满足日常开发中绝大多数数据生成场景

  • Gofakeit让您以更优雅的姿势生成测试数据。

  • Gofakeit内置160+函数,同时也很方便自定义。

功能

  • 160+内置函数!!!

  • 多个rand源

  • 全局rand

  • 支持struct tag

  • 支持自定义函数

  • 内置http server

  • 内置command line tool

  • 0依赖

  • 高性能

安装

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

Usage

  • 快速开始

    import "github.com/brianvoe/gofakeit/v6"
      gofakeit.Name()             // Markus Moen
      gofakeit.Email()            // alaynawuckert@kozey.biz
      gofakeit.Phone()            // (570)245-7485
      gofakeit.BS()               // front-end
      gofakeit.BeerName()         // Duvel
      gofakeit.Color()            // MediumOrchid
      gofakeit.Company()          // Moen, Pagac and Wuckert
      gofakeit.CreditCardNumber() // 4287271570245748
      gofakeit.HackerPhrase()     // Connecting the array won't do anything, we need to generate the haptic COM driver!
      gofakeit.JobTitle()         // Director
      gofakeit.CurrencyShort()    // USD
  • 切换Random源Gofakeit有多个rand源,默认是math.Rand,并且使用互斥锁实现并发安全。

    // Uses crypto/rand(cryptographically secure) with mutext locking
      faker := gofakeit.NewCrypto()
      
      // Pass in your own random source
      faker := gofakeit.NewCustom()

    如果你需要更高的性能,可以手动解除互斥锁,注意这不是并发安全

    // Uses math/rand(Pseudo) with NO mutext locking
      // More performant but not goroutine safe.
      faker := gofakeit.NewUnlocked(0)
  • 全局设置rand 如果你需要全局替换rand源,只需要简单设置即可:

    faker := gofakeit.NewCrypto()
      gofakeit.SetGlobalFaker(faker)
  • Struct 生成Gofakeit可以为struct生成随机数据,并且可以覆盖所有基本类型,还可以使用tag定制数据

    import "github.com/brianvoe/gofakeit/v6"
    
      // Create structs with random injected data
      type Foo struct {
          Str      string
          Int      int
          Pointer  *int
          Name     string         `fake:"{firstname}"`         // Any available function all lowercase
       
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值