SYS.NANOOK // REV 2.0 STATUS: OPERATIONAL

Nanook

A toolkit for test case and test data creation

Combine the Power of equivalence class tables and data generators

↓ SEE USE CASES
[ SYSTEM ARCHITECTURE ] Nanook architecture diagram

What is Nanook?

Nanook is an open-source toolkit for systematic test case and test data creation. It uses equivalence class tables — spreadsheets that define input fields, value classes, and test combinations — to automatically generate synthetic test data. Nanook reads test definitions from LibreOffice, Excel, or Google Sheets and produces test data in JSON, CSV, or any custom format through pluggable writers. Built with Node.js, it integrates into CI/CD pipelines and supports custom data generators for domain-specific testing needs. Nanook is used by enterprises including Deutsche Bahn for automated test data generation.

CAPABILITIES /// 03 MODULES
Equivalence class table icon

Equivalent Class Tables

Define, Document and Optimize your test cases.

UNIT / M-01
Test data generation icon

Test Data Generation

Enrich the tables with generator calls and generate your data as needed. Export the data in any format you need. The generators and exporters are fully customisable.

UNIT / M-02
Integration icon

Integrate Faster

All your testing apps, tools and platforms, are easy to integrate with Nanook

UNIT / M-03
WORKFLOW /// HOW IT WORKS
01

Define Your Test Cases

Create equivalence class tables in a spreadsheet — LibreOffice, Excel, or Google Sheets. Each table defines the input fields, their possible value classes, and which combinations to test. No coding required at this stage.

02

Add Data Generators

Attach generator functions to your equivalence classes. Use built-in generators for common data types like emails, names, and dates — or write custom generators in JavaScript for domain-specific test data.

03

Generate & Export

Run Nanook to produce synthetic test data for every defined test case. Export to JSON, CSV, or any custom format through pluggable writers. Integrate the output directly into your CI/CD pipeline or testing framework.

USE CASES /// 08 SCENARIOS

API Testing

Systematically test REST and GraphQL endpoints. Generate varied payloads covering valid inputs, error paths, and edge cases — all from one equivalence class table.

UC-01 / API

Form Validation

Registration, login, checkout. Every form has fields with validation rules. Nanook produces test data for every valid/invalid combination without manual fixture work.

UC-02 / FORM

CI/CD Integration

Regenerate test data on every spec change. Nanook runs as a Node.js script in any pipeline — GitHub Actions, GitLab CI, Jenkins, or a cron job.

UC-03 / CICD

GDPR-Compliant Test Data

Stop copying production data to test environments. Synthetic data matches your schema without privacy risks, audit headaches, or compliance exposure.

UC-04 / GDPR

Load Testing

Need 10,000 test users or 1 million transactions? Nanook scales your equivalence class table to any volume while preserving realistic data distribution.

UC-05 / LOAD

Integration Testing

Test data flowing through multiple microservices. Nanook keeps data consistent across service boundaries with reference fields and instance IDs.

UC-06 / INT

Environment Seeding

Bootstrap dev and staging environments with realistic, repeatable data. Every developer sees the same test data, defined in one spreadsheet.

UC-07 / SEED

Migration Testing

Test database migrations with synthetic data that matches your production schema. Regenerate after every schema change — no risk of leaking real data.

UC-08 / MIG

Your Use Case?

Not sure if Nanook fits your scenario? Open an issue on GitHub or reach out at opensource@xhub.io.

UC-09 / OPEN
FAQ /// COMMON QUESTIONS
What is an equivalence class table?

An equivalence class table is a spreadsheet that defines input fields, their possible value classes, and which combinations to test. Each class represents a group of values that should produce equivalent behavior. Nanook reads these tables from Excel, LibreOffice, or Google Sheets.

Which spreadsheet formats does Nanook support?

Nanook supports Microsoft Excel (.xlsx, .xls), LibreOffice (.ods), and Google Sheets. You can define your test cases in any of these formats and Nanook will process them identically.

What output formats can Nanook generate?

Nanook can export test data to JSON, CSV, or any custom format. The output is controlled through pluggable writers — you can use the built-in writers or create your own for domain-specific formats.

Can I use Nanook in my CI/CD pipeline?

Yes. Nanook is built with Node.js and designed for automation. You can integrate it into any CI/CD pipeline to regenerate test data whenever your test specifications change.

Is Nanook free to use?

Yes, Nanook is open source and released under the MIT License. It is free for both personal and commercial use.

[ TRUSTED BY ]