Maîtriser la génération de données fictives avec Mock Random

Architecture et organisation du code source

Mock Random est une bibliothèque utilitaire conçue pour produire des données aléatoires variées, facilitant ainsi les tests unitaires et la simulation de scénarios réels. L'organisation standard du dépôt de code se présente comme suit :

mock-random-lib/
├── documentation.md  # Guide d'utilisation et introduction
├── lib/              # Code source principal
│   ├── core.js       # Point d'entrée et méthodes fondamentales
│   └── utils.js      # Fonctions utilitaires
└── demos/            # Exemples d'implémentation
    ├── simple.js     # Cas d'usage basiques
    └── complexe.js   # Scénarios avancés

Le fichier lib/core.js contient l'implémentation des générateurs de données (adresses IP, URLs, courriels, etc.), tandis que le répertoire demos fournit des cas pratiques d'intégration.

Intégration dans les différents environnements

Étant une bibliothèque JavaScript pure, Mock Random ne nécessite pas de serveur d'application pour fonctionner. Elle peut être instanciée directement dans Node.js ou chargée dans un navigateur.

Pour un environnement Node.js, l'importation se fait via le gestionnaire de modules CommonJS :

const { Random } = require('mock-random-lib');

const adresseCourriel = Random.email();
console.log(`Courriel généré : ${adresseCourriel}`);

Dans un contexte navigateur, l'inclusion se fait via une balise script pointant vers la version compilée :

<script src="assets/mock-random-lib.min.js"></script>
<script>
  const { Random } = window.MockRandomLib;
  console.log(`Courriel généré : ${Random.email()}`);
</script>

Extension et personnalisation des générateurs

Bien que la bibliothèque fonctionne sans fichier de configuration externe, il est possible d'étendre ses capacités natives pour répondre à des besoins spécifiques. Par exemple, pour créer un générateur d'entiers bornés, on peut surcharger l'objet Random :

const CustomRandom = Mock.Random.extend({
  randomInt: function(lowerBound, upperBound) {
    const intervalle = upperBound - lowerBound + 1;
    return Math.floor(Math.random() * intervalle) + lowerBound;
  }
});

const nombreAleatoire = CustomRandom.randomInt(10, 50);
console.log(`Valeur obtenue : ${nombreAleatoire}`);

Cette approche permet d'ajouter des méthodes personnalisées tout en conservant l'API existante. Pour des besoins de simulation de structures JSON complexes, il est recommandé de coupler cet outil avec MockJS, qui utilise des templates de configuration pour définir le format des réponses API.

Étiquettes: mock-random JavaScript mock-data data-generation Unit-Testing

Publié le 5 juillet à 17h25