Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/msrivastav13/testdata

Salesforce CLI Plugin for generating test data using mockaroo schema
https://github.com/msrivastav13/testdata

salesforce-cli salesforce-developers salesforce-metadata salesforcedx

Last synced: about 1 month ago
JSON representation

Salesforce CLI Plugin for generating test data using mockaroo schema

Awesome Lists containing this project

README

        

testdata sfdx-plugin
========

A plugin for Salesforce DX CLI that provides ability to generate test data using mockaroo schema

You will need to sign up for the mockaroo API services and generate a schema.

[![Version](https://img.shields.io/npm/v/seedmockdata.svg)](https://www.npmjs.com/package/seedmockdata)
![sfdx plugin testcases](https://github.com/msrivastav13/testdata/workflows/sfdx%20plugin%20testcases/badge.svg?branch=master)
![release plugin](https://github.com/msrivastav13/testdata/workflows/release%20plugin/badge.svg?branch=master)
[![codecov](https://codecov.io/gh/msrivastav13/testdata/branch/master/graph/badge.svg)](https://codecov.io/gh/msrivastav13/testdata)
[![Downloads/week](https://img.shields.io/npm/dw/testdata.svg)](https://npmjs.org/package/testdata)
[![License](https://img.shields.io/npm/l/testdata.svg)](https://github.com/Projects/testdata/blob/master/package.json)

## Setup

### **Install as plugin (Recommended approach for Installing)**

Install plugin using command : `sfdx plugins:install seedmockdata`

### **Install from source(Preferred approach for debugging and enhancing the plugin)**
1. Install the SDFX CLI.

2. Clone the repository: `git clone [email protected]:msrivastav13/testdata.git`

3. Install using yarn: `yarn install`

4. Link the plugin: `sfdx plugins:link` .

## Prequsite

1. Requires [mockaroo](https://mockaroo.com/) account

2. Get your mockaroo api key from your My Account Settings.

3. Set the MAPIKEY environment variable. On MAC OSX for type `export MAPIKEY=`. The key is presisted only for current terminal session. For persisitng it for ever add env variable in bash_profile

4. Create a Schema mapping in mockaroo. Note that always choose one field with name externalId and map to an Id function in mockaroo

USAGE

* [`sfdx testdata:generate -s [-o ] [-d ] [-f ] [-c ] [--json] [--loglevel trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL]`](#sfdx-testdatagenerate--s-string--o-string--d-string--f-string--c-integer---json---loglevel-tracedebuginfowarnerrorfataltracedebuginfowarnerrorfatal)

## `sfdx testdata:generate -s [-o ] [-d ] [-f ] [-c ] [--json] [--loglevel trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL]`

Creates test data using mockaroo schema. Requires mockaroo schemaId and key. Set your mockaroo key using environment variable MAPIKEY

```
USAGE
$ sfdx testdata:generate -s [-o ] [-d ] [-f ] [-c ] [--json] [--loglevel
trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL]

OPTIONS
-c, --count=count [default: 10] specify the number of
rows of data needed

-d, --outputdir=outputdir [default: ./data] path of the output
directory of file

-f, --format=format file format of the output. Supported
values are json/csv

-o, --sobject=sobject [default: testdata] Name of the
Salesforce object

-s, --schemaid=schemaid (required) Mockaroo Schema Id

--json format output as json

--loglevel=(trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL) [default: warn] logging level for
this command invocation

EXAMPLES
Generates testdata from mockaroo schemaid and creates a json file account.json with 10 rows of data in ./data
directory
$ sfdx testdata:generate --schemaid=ea4x6ba0 --count=100 --sobject=account --json
Generates testdata from mockaroo schemaid and creates a json file Contact.json in ./data directory
$ sfdx testdata:generate --schemaid=eax36ba0 --sobject=Contact
Generates testdata from mockaroo schemaid and creates a csv file Contact.csv in ./data directory
$ sfdx testdata:generate --schemaid=eax36ba0 --sobject=Contact --outputdir='./data' --format=csv
```

_See code: [src/commands/testdata/generate.ts](https://github.com/msrivastav13/testdata/blob/master/src/commands/testdata/generate.ts)_