Coder Social home page Coder Social logo

xk6-faker's Introduction

xk6-faker

A k6 extension for random fake data generation.

Altought there is several good JavaScript fake data generator, but using these as remote module in k6 tests has several disadvantages (download size, memory usage, startup time, etc). The xk6-faker implemented as a golang extension, so tests starts faster and use less memory. The price is a little bit smaller feature set compared with popular JavaScript fake data generators.

The underlying implementation is https://github.com/brianvoe/gofakeit.

Built for k6 using xk6.

Usage

The main generator class is Faker.

import { Faker } from "k6/x/faker"

let f = new Faker();
console.log(f.name());

Pass a random seed number to Faker constructor if you want to get deterministic random values.

import { Faker } from "k6/x/faker"

let f = new Faker(1234);
console.log(f.name());

For easier usage, the module's default export is a Faker instance too, so you can use generator functions without instantiating the Faker class:

import faker from "k6/x/faker"

console.log(faker.name())

You can pass random seed value in XK6_FAKER_SEED env if you want deterministic generated random values.

API

General purpose generator functions:

  • lexify(str) will replace ? with random generated letters
  • numerify(str) will replace # with random numerical values
  • generate(str) will replace values within {} with generator function return values

For complete generated API documentation click here!

Build

To build a k6 binary with this extension, first ensure you have the prerequisites:

Then:

  1. Install xk6:
$ go install go.k6.io/xk6/cmd/xk6@latest
  1. Build the binary:
$ xk6 build --with github.com/szkiba/xk6-faker@latest

xk6-faker's People

Contributors

mstoykov avatar olegbespalov avatar rade-popovic avatar szkiba avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.