/rapiddweller-benerator-ce

Benerator is a leading software solution to generate, obfuscate, pseudonymize and migrate data for development, testing, and training purposes.

Primary LanguageJavaOtherNOASSERTION

Benerator

Benerator, the smart way to generate data

.github/workflows/ci.yml Coverage Maintainability Rating Reliability Rating Security Rating Maven Central Quality Gate Status

rapiddweller-benerator-ce

rapiddweller 'Benerator' is a software solution to generate, obfuscate (anonymize / pseudonymize) and migrate data for development, testing and training purposes.

Introduction

rapiddweller 'Benerator' allows creating realistic and valid high-volume test data, used for testing (unit/integration/load) and showcase setup.

Metadata constraints are imported from systems and/or configuration files. Data can be imported from and exported to files and systems, obfuscated, or generated from scratch. Domain packages provide reusable generators for creating domain-specific data as names and addresses internationalizable in language and region. It is strongly customizable with plugins and configuration options.

rapiddweller 'Benerator' is built for Java 11.

If you need support for Java 8 or earlier, please consider using the versions <= 1.0.1.

Prerequisites

Check your local setup

java -version
mvn -version

Installation

  1. Choose how to install:

    a) Download a Prebuilt Distribution from Project Overview > Releases (current release is 2.0.0, cp. rapiddweller-benerator-ce-2.0.0-jdk-11-dist.zip) and unzip the downloaded file in an appropriate directory, e.g. /Developer/Applications or C:\Program Files\Development.

    b) Checkout repository and build your own rapiddweller-benerator-ce using
    maven command mvn clean install

  2. Set BENERATOR_HOME
    Create an environment variable BENERATOR_HOME that points to the path you extracted Benerator to.

    • Windows Details: Open the System Control Panel, choose Advanced Settings - Environment Variables. Choose New in the User Variables section. Enter BENERATOR_HOME as name and the path as value (e.g. C:\Program Files\Development\rapiddweller-benerator-ce-2.0.0-jdk-11). Click OK several times.

    • Mac/Unix/Linux Details: Add an entry that points to Benerator, e.g.: export BENERATOR_HOME=/Developer/Applications/rapiddweller-benerator-ce-2.0.0-jdk-11

  3. On Unix/Linux/Mac systems: Set permissions
    Open a shell on the installation's root directory and execute chmod a+x bin/*.sh

  4. Mac OS X configuration Set JAVA_HOME On Mac OS X you need to provide benerator with an explicit configuration of the JAVA_HOME path. See http://developer.apple.com/qa/qa2001/qa1170.html for a good introduction to the OS X way of setting up Java. It is based on aliases conventions. If you are not familiar with that, you should read the article. If Java 8 (or newer) is the default version you will use, you can simply define JAVA_HOME by adding the following line to your .profile: in your user directory: export JAVA_HOME=/Library/Java/Home If it does not work or if you need to use different Java versions, it is easier to 'hard-code' JAVA_HOME like this: export JAVA_HOME=/Library/Java/JavaVirtualMachines/adoptopenjdk-11.jdk/Contents/Home/

Note: We currently recommend following projects for your proper Mac OS X setup:

Run

If you followed above installation steps carefully, run your benerator scripts from command line.

  1. Start benerator from command line
benerator <YOUR_BENERATOR_SCRIPT>.xml

To get started please find some demo scripts in the folder /src/demo/resources/demo of this repository.

Docs / rapiddweller manual

There are various sources to get you started or extend your benerator knowledge:

  • Read our docs on our Benerator Manual site or create your own mkdocs with python mkdocs build. Keep in mind that you might need to install certain mkdocs dependencies first.

  • Consider the Maven Site Docs or create your own docs using maven mvn site:site. The generated docs include Javadoc, Test Reports and more.

  • Download the Benerator Manual from our website.

  • Checkout the maintainer's website www.benerator.de for additional support resources.

If there are still open questions and things are unclear because they are missing or insufficiently explained in our Benerator manual, please open an issue on GitHub, so we can expand our manual to make things clearer for you.

Table of Contents Manual

Navigate to the sources for our generated mkdocs:

Development Quick Start (only Linux and Mac OS X)

If you want to start development or use the maven project to build rapiddweller 'Benerator' by yourself, on Linux or Mac OS X you can also try the quickstart by using the helper scripts.
IMPORTANT: If you want to use the command benerator in your shell session, you have to execute source script/2_setup_benerator.sh
If you want to install Benerator permanently into your system, you have to modify your environment file or your ~/.profile
and add ENV variable BENERATOR_HOME and PATH=$BENERATOR_HOME/bin:$PATH

to execute the scripts you can do ...

bash script/1_install_mvn_dependencies.sh
source script/2_setup_benerator.sh
bash script/3_execute_demos.sh

... alternatively, you can also set execute permissions like ...

chmod +x script/1_install_mvn_dependencies.sh
chmod +x script/2_setup_benerator.sh
chmod +x script/3_execute_demos.sh

... and execute scripts like this

.script/1_install_mvn_dependencies.sh
.script/2_setup_benerator.sh
.script/3_execute_demos.sh

  • 1_install_mvn_dependencies.sh : This script is checking Prerequisites for you, cloning all rapiddweller-benerator-ce SubProjects and install via Maven locally.

  • 2_setup_benerator.sh : This script is building on script no. 1 and using installed dependencies and packed jar, assemble it to a rapiddweller-benerator-ce.tar.gz and setup Benerator locally into your user home directory.

  • 3_execute_demos.sh : This script is building on script no. 2 and use the unpacked and configure rapiddweller-benerator-ce application to execute existing demo files.

Getting Involved

If you would like to reach out to the maintainers, contact us via our Contact-Form or email us at solution.benerator@rapiddweller.com.

Contributing

Please see our Contributing guidelines. For releasing see our release creation guide. Check out the maintainers website!