Agent skill

Generating Test Data

by jeremylongshore in jeremylongshore/tons-of-skills-marketplace

Generate realistic test data including edge cases and boundary conditions.

MITAuto-check passedTesting & QA

Install Generating Test Data

skills CLI
$ npx skills add jeremylongshore/tons-of-skills-marketplace --skill generating-test-data -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install jeremylongshore/tons-of-skills-marketplace generating-test-data --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/jeremylongshore/tons-of-skills-marketplace.git skills-src && mkdir -p .claude/skills && cp -r skills-src/skills/.curated/generating-test-data .claude/skills/generating-test-data && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
generating-test-data
GitHub stars
2.8k
Token cost
~1.5k tokens
SKILL.md length
503 words
Files
5 (incl. scripts, references, assets)
Skills in repo
3,342
Repo updated
First seen
Licence
MIT

At a glance

Generate realistic test data including edge cases and boundary conditions.

  • Works in 7 steps: Read the project's data models,… → For each entity, create a factory… → Generate edge case data variants for… → …
  • Creating realistic fixtures
  • SKILL.md covers Overview, Prerequisites, Instructions and Output, plus 3 more sections
  • Runs Python scripts from its folder

What it does

Generating Test Data is an agent skill from jeremylongshore/tons-of-skills-marketplace. Generate realistic test data including edge cases and boundary conditions. Use when creating realistic fixtures or edge case test data. Trigger with phrases like "generate test data", "create fixtures", or "setup test database".

Its SKILL.md is about 1.5k tokens, which your agent loads only when the skill is triggered. The skill folder holds 7 other files, including scripts, reference files and assets (for example `assets/README.md`, `references/README.md` and `scripts/README.md`). Compatibility notes: Designed for Claude Code

It sits in Testing & QA, covering Test generation and Test data and fixtures. It works with TypeScript. The repository describes itself as: Model-agnostic agent-skills platform with a harness-free canonical layer, verified adapters, and the ccpi package manager. Explore at tonsofskills.com. The licence is MIT.

When your agent uses it

  • Creating realistic fixtures
  • Edge case test data
  • With phrases like generate test data
  • Create fixtures

Example prompts

  • “generate test data”
  • “create fixtures”
  • “setup test database”
  • “/generating-test-data”

Requirements

  • Python 3
  • Compatibility (from SKILL.md): Designed for Claude Code
  • Pre-approved tools (allowed-tools): Read, Write, Edit, Grep, Glob, Bash(test:data-*)

Workflow steps

7 steps, taken from the first numbered list in SKILL.md.

  1. Read the project's data models, TypeScript interfaces, database schemas, or ORM definitions to understand the shape of all entities.
  2. For each entity, create a factory function that produces a valid default instance
  3. Generate edge case data variants for each entity
  4. Create relationship factories that build connected entity graphs
  5. Generate database seed files for integration tests
  6. Write fixture files in JSON, YAML, or TypeScript for static test data
  7. Validate generated data against the schema to ensure factories remain in sync with model changes.

What it can do on your machine

Read from SKILL.md and the folder at commit 23ea8d4. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves these tools, so the agent can use them without asking each time:

    • Read
    • Write
    • Edit
    • Grep
    • Glob
    • Bash(test:data-*)

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    Ships 2 files in scripts/ (Python), which the agent can run.

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    Links to these hosts (documentation or services it may open):

    • fakerjs.dev
    • github.com
    • factoryboy.readthedocs.io
    • chancejs.com
    • martinfowler.com

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

  • Compatibility

    Designed for Claude Code

    From compatibility in the SKILL.md frontmatter.

Context cost

Generating Test Data loads about 1.5k tokens when it runs, and up to ~1.5k if it reads all its reference files. Until then it costs about 62 tokens; SKILL.md has 503 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~62
When it runs · the whole SKILL.md, loaded when a task matches
~1.5k
With references · SKILL.md plus every file in references/, read only if the agent opens them
~1.5k

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check passed

The automated check found no risky patterns in SKILL.md.

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); the scripts in this folder are not scanned.

SKILL.md

The full file from jeremylongshore/tons-of-skills-marketplace at commit 23ea8d4, republished under its MIT licence (© jeremylongshore). 503 words, ~1,523 tokens.

Download SKILL.mdSave it as .claude/skills/generating-test-data/SKILL.md (or your agent's skills folder). This skill also uses 4 other files; get the full folder from GitHub.
name
generating-test-data
description
Generate realistic test data including edge cases and boundary conditions. Use when creating realistic fixtures or edge case test data. Trigger with phrases like "generate test data", "create fixtures", or "setup test database".
allowed-tools
Read, Write, Edit, Grep, Glob, Bash(test:data-*)
compatibility
Designed for Claude Code
version
1.24.0
author
Jeremy Longshore <jeremy@intentsolutions.io>
license
MIT
tags
testing, database, test-data

Test Data Generator

Overview

Generate realistic, type-safe test data including fixtures, factory functions, seed datasets, and edge case values. Supports Faker.js, Factory Bot patterns, Fishery (TypeScript factories), pytest fixtures, and database seed scripts.

Prerequisites

  • Data generation library installed (Faker.js/@faker-js/faker, Fishery, factory-boy for Python, or JavaFaker)
  • Database schema or TypeScript/Python type definitions for the data models
  • Test framework with fixture support (Jest, pytest, JUnit)
  • Seed management for reproducible random data (faker.seed())
  • Database client for seed data insertion (if generating database fixtures)

Instructions

  1. Read the project's data models, TypeScript interfaces, database schemas, or ORM definitions to understand the shape of all entities.
  2. For each entity, create a factory function that produces a valid default instance:
    • Use Faker methods matched to field semantics (e.g., faker.person.fullName() for names, faker.internet.email() for emails).
    • Provide sensible defaults for required fields.
    • Allow overrides via a partial parameter for test-specific customization.
    • Set a deterministic seed for reproducibility (faker.seed(12345)).
  3. Generate edge case data variants for each entity:
    • Empty values: Empty strings, null, undefined, empty arrays.
    • Boundary values: Maximum string length, integer overflow, zero, negative numbers.
    • Unicode and i18n: Names with accents, CJK characters, RTL text, emoji.
    • Adversarial inputs: SQL injection strings, XSS payloads, excessively long strings.
    • Temporal edge cases: Leap years, timezone boundaries, epoch zero, far-future dates.
  4. Create relationship factories that build connected entity graphs:
    • A user factory that also creates associated addresses and orders.
    • Configurable depth to avoid infinite recursion.
    • Lazy evaluation for optional relationships.
  5. Generate database seed files for integration tests:
    • SQL insert scripts or ORM seed functions.
    • Idempotent operations (use ON CONFLICT or INSERT IF NOT EXISTS).
    • Separate seed sets for different test scenarios (empty state, populated state, edge cases).
  6. Write fixture files in JSON, YAML, or TypeScript for static test data:
    • Group fixtures by test scenario.
    • Include both valid and invalid data sets.
  7. Validate generated data against the schema to ensure factories remain in sync with model changes.
Show full SKILL.md (184 more words)Show less

Output

  • Factory function files (one per entity) in test/factories/ or tests/factories/
  • Edge case data collections covering boundaries and adversarial inputs
  • Database seed scripts for integration test environments
  • JSON/YAML fixture files for static test data
  • Factory index file exporting all factories for easy test imports

Error Handling

ErrorCauseSolution
Factory produces invalid dataSchema changed but factory not updatedAdd a validation step that runs the factory output through the schema validator
Duplicate unique valuesFaker generates collisions in small datasetsUse sequential IDs or append a counter; increase Faker's unique retry limit
Database seed fails on foreign keySeed insertion order violates referential integritySort seed operations topologically by dependency; disable FK checks during seeding
Factory recursion overflowCircular relationships (User -> Order -> User)Limit relationship depth; use lazy references; break cycles with ID-only references
Non-deterministic test failuresRandom seed not set consistentlyCall faker.seed() in beforeAll or at factory module level; document seed values

Examples

TypeScript factory with Fishery:

typescript
import { Factory } from 'fishery';
import { faker } from '@faker-js/faker';

interface User {
  id: string;
  name: string;
  email: string;
  role: 'admin' | 'user';
  createdAt: Date;
}

export const userFactory = Factory.define<User>(({ sequence }) => ({
  id: `user-${sequence}`,
  name: faker.person.fullName(),
  email: faker.internet.email(),
  role: 'user',
  createdAt: faker.date.past(),
}));

// Usage:
const user = userFactory.build();
const admin = userFactory.build({ role: 'admin' });
const users = userFactory.buildList(10);

pytest fixture factory:

python
import pytest
from faker import Faker

fake = Faker()
Faker.seed(42)

@pytest.fixture
def make_user():
    def _make_user(**overrides):
        defaults = {
            "name": fake.name(),
            "email": fake.email(),
            "age": fake.random_int(min=18, max=99),
        }
        return {**defaults, **overrides}
    return _make_user

def test_user_validation(make_user):
    user = make_user(age=17)
    assert validate_age(user) is False

Edge case data collection:

typescript
export const edgeCases = {
  strings: ['', ' ', '\t\n', 'a'.repeat(10000), '<script>alert(1)</script>',  # 10000: 10 seconds in ms
            "Robert'); DROP TABLE users;--", '\u0000null\u0000byte'],
  numbers: [0, -0, -1, Number.MAX_SAFE_INTEGER, NaN, Infinity, -Infinity],
  dates: [new Date(0), new Date('2024-02-29'), new Date('9999-12-31')],  # 2024: 9999 = configured value
};

Resources

© jeremylongshore, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

SKILL.md and 4 other files (scripts, references, assets) in skills/.curated/generating-test-data of jeremylongshore/tons-of-skills-marketplace.

  • SKILL.md
  • assets/README.md
  • references/README.md
  • scripts/README.md
  • scripts/generate_data.py

Open the folder on GitHubat commit 23ea8d4

Compare with similar skills

Generating Test Data next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

Generating Test Data compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Generating Test Data this skilljeremylongshore/tons-of-skills-marketplace2.8k—~1.5kAutomated safety check: PassMIT
Testing Strategiesancoleman/ai-design-components526—~3.8kAutomated safety check: PassMIT
Java SDK E2E Test with Replay Snapshotgithub/copilot-sdk11k—~1.8kAutomated safety check: PassMIT
Migrate To Shoehornfossasia/eventyay-interpretation1.6k12 repos~698Automated safety check: PassApache-2.0
Syncable Entity Integration Teststwentyhq/twenty58k—~3.4kAutomated safety check: PassCustom licence
Skill Doli Test InteractiveDolibarr/dolibarr7.7k1 repos~5.5kAutomated safety check: PassGPL-3.0

Similar skills

  • Testing Strategies

    ancoleman/ai-design-components

    Strategic guidance for choosing and implementing testing approaches across the test pyramid.

    526 GitHub stars~3.8k tokensUpdated 10 mo ago
    Testing & QAAuto-check passed
  • Official

    Creates a Java SDK end-to-end test for the Copilot SDK that runs against a recorded YAML snapshot through a replay proxy, so CI needs no real authentication.

    11k GitHub stars~1.8k tokensUpdated yesterday
    Testing & QAAuto-check passed
  • Migrate To Shoehorn

    fossasia/eventyay-interpretation

    Migrate test files from as type assertions to @total-typescript/shoehorn.

    1.6k GitHub starsUsed in 12 repos~698 tokens
    Testing & QAAuto-check passed
  • Step-by-step guide to writing the mandatory integration tests for syncable metadata entities in Twenty's server, covering failures and CRUD success cases.

    58k GitHub stars~3.4k tokensUpdated yesterday
    Testing & QAAuto-check passed
  • Create interactive PHP test case scripts for Dolibarr ERP/CRM that allow users to setup test data, view results via direct links, and tear down (clean up) the data.

    7.7k GitHub starsUsed in 1 repo~5.5k tokens
    Testing & QAAuto-check passed
  • Write Tests

    openplayerjs/openplayerjs

    Write or extend Jest tests for OpenPlayerJS to this repo's exact conventions — makeCore factories, typed internals handles instead of as any, media property mocking, fake timers, ads/vast mocks, and…

    649 GitHub stars~1.8k tokensUpdated 3 days ago
    Testing & QAAuto-check passed

More from jeremylongshore/tons-of-skills-marketplace

All 3,342 skills in this repo
  • Performing Security Code Review

    jeremylongshore/tons-of-skills-marketplace

    Execute this skill enables AI assistant to conduct a security-focused code review using the security-agent plugin.

    2.8k GitHub starsUsed in 2 repos~1.3k tokens
    Auto-check: notes
  • Analyzing Text With NLP

    jeremylongshore/tons-of-skills-marketplace

    Execute this skill enables AI assistant to perform natural language processing and text analysis using the nlp-text-analyzer plugin.

    2.8k GitHub starsUsed in 1 repo~819 tokens
    Auto-check passed
  • Building Neural Networks

    jeremylongshore/tons-of-skills-marketplace

    Execute this skill allows AI assistant to construct and configure neural network architectures using the neural-network-builder plugin.

    2.8k GitHub starsUsed in 1 repo~1k tokens
    Auto-check passed
  • Detecting Data Anomalies

    jeremylongshore/tons-of-skills-marketplace

    Process identify anomalies and outliers in datasets using machine learning algorithms.

    2.8k GitHub starsUsed in 1 repo~1.4k tokens
    Auto-check passed
  • Explaining Machine Learning Models

    jeremylongshore/tons-of-skills-marketplace

    Build this skill enables AI assistant to provide interpretability and explainability for machine learning models.

    2.8k GitHub starsUsed in 1 repo~1k tokens
    Auto-check passed
  • Optimizing Prompts

    jeremylongshore/tons-of-skills-marketplace

    Execute this skill optimizes prompts for large language models (llms) to reduce token usage, lower costs, and improve performance.

    2.8k GitHub starsUsed in 1 repo~1k tokens
    Auto-check passed

Works with

Categories

Questions about Generating Test Data

What does Generating Test Data do?

Generate realistic test data including edge cases and boundary conditions. Generating Test Data is an agent skill from jeremylongshore/tons-of-skills-marketplace. Generate realistic test data including edge cases and boundary conditions.

When should I use Generating Test Data?

Generating Test Data fits situations like: creating realistic fixtures; edge case test data; with phrases like generate test data; create fixtures.

How do I install Generating Test Data in Claude Code?

Run `npx skills add jeremylongshore/tons-of-skills-marketplace --skill generating-test-data -a claude-code`. Or copy the skill folder (skills/.curated/generating-test-data in jeremylongshore/tons-of-skills-marketplace) into .claude/skills/generating-test-data in your project. Claude Code loads it when a task matches its description.

How do I install Generating Test Data in Codex?

Run `npx skills add jeremylongshore/tons-of-skills-marketplace --skill generating-test-data -a codex`. Or copy the skill folder (skills/.curated/generating-test-data in jeremylongshore/tons-of-skills-marketplace) into .agents/skills/generating-test-data in your project. Codex loads it when a task matches its description.

Can I use Generating Test Data in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add jeremylongshore/tons-of-skills-marketplace --skill generating-test-data -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/generating-test-data, .gemini/skills/generating-test-data, .github/skills/generating-test-data and .opencode/skills/generating-test-data in your project.

What does Generating Test Data need to run?

Going by SKILL.md and its folder, Generating Test Data needs Python for the scripts in its folder. Our summary lists: Python 3. Its frontmatter pre-approves these tools: Read, Write, Edit, Grep, Glob, Bash(test:data-*). Compatibility (from SKILL.md): Designed for Claude Code.

Does Generating Test Data access the network?

SKILL.md names 5 domains. As links in the text: fakerjs.dev, github.com, factoryboy.readthedocs.io, chancejs.com and martinfowler.com. This is read from the text; nothing was executed.

Is Generating Test Data safe to install?

Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. The check reads SKILL.md only: the scripts in the folder are not scanned, so read them before running anything.

What licence does Generating Test Data use?

Generating Test Data is published under the MIT licence (declared in SKILL.md). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Generating Test Data use?

About 1.5k tokens (SKILL.md is roughly 6.1k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full. Its references folder adds about 16 tokens, read only when the agent opens those files.

What are the alternatives to Generating Test Data?

Skills that share tags, products or a category with Generating Test Data: Testing Strategies (ancoleman/ai-design-components, 526 stars), Java SDK E2E Test with Replay Snapshot (github/copilot-sdk, 11k stars), Migrate To Shoehorn (fossasia/eventyay-interpretation, 1.6k stars) and Syncable Entity Integration Tests (twentyhq/twenty, 58k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Generating Test Data?

jeremylongshore (a GitHub user) maintains it in jeremylongshore/tons-of-skills-marketplace, which has 2,821 GitHub stars. The repository holds 3,342 skills in this directory. The repository was last updated on October 8, 2026.

Source: jeremylongshore/tons-of-skills-marketplace on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.