Генератор тестовых данных

Десять строк тестовых данных уже готовы — измените настройку, и вывод обновится.

10

Одно зерно + одинаковые настройки = одни и те же данные.

Как пользоваться

  1. Страница открывается с десятью готовыми строками CSV — строка заголовка включена, поэтому текст можно сразу вставить в фикстуру, таблицу или импорт в базу данных.
  2. Задайте число строк (1–200), выберите CSV, JSON или SQL и отметьте нужные поля. Всё перестраивается при изменении; смена формата заново сериализует те же строки, а не создаёт новые.
  3. Выберите язык данных — английский, 简体中文 или العربية — независимо от языка интерфейса. Имена, компании и пары «город/страна» следуют этому выбору, а ключи полей, даты ISO и синтаксис SQL остаются неизменными.
  4. Добавьте зерно, если одни и те же данные должны воспроизводиться при повторе: одинаковые зерно, строки, поля и язык данных всегда дают одинаковый набор. Скопируйте или скачайте его, когда всё выглядит правильно — ничего не загружается, не сохраняется и не попадает в URL.

Пример

Настройки

10 строк · CSV · английский · id, name, email, phone, city, country

Один из возможных результатов

id,name,email,phone,city,country
1,Olivia Bennett,olivia.bennett@example.com,1-202-555-0142,New York,United States
2,Liam Carter,liam.carter@example.net,1-202-555-0107,London,United Kingdom
3,Emma Collins,emma.collins@example.org,1-202-555-0164,Toronto,Canada
…

Значения случайны, поэтому у вас они будут другими. Проверьте ключи заголовка, id от 1 до 10 и то, что каждый email заканчивается на example.com, example.net или example.org. Переключение на JSON или SQL заново сериализует эти же строки, а не создаёт новые.

Правила, ограничения и известные проблемы

  • Все значения вымышлены. Имена, компании и города берутся из небольших написанных вручную списков; любое совпадение с реальными людьми или организациями случайно.
  • Email используют зарезервированные домены example.com, example.net и example.org (RFC 2606): они уникальны внутри одного набора, но никогда не получают почту, а новый набор может повторить адрес.
  • Телефоны — образцы формата, а не выданные номера. Североамериканские значения лежат в вымышленном диапазоне 555-0100–0199; китайские и арабские используют блоки с ведущими нулями. Шаблон зависит только от языка данных, а не от города и страны в той же строке. В некоторых странах нет зарезервированного диапазона, поэтому сгенерированный номер может существовать — не звоните и не пишите на него.
  • Местоположение — это только город и страна: без улицы, индекса и координат. Город и страна в одной строке всегда берутся из одной пары, но это не адрес для доставки.
  • CSV всегда содержит строку заголовка, переводы строк LF и не содержит BOM. Старые версии Excel могут исказить CSV с не-ASCII при двойном щелчке; импортируйте его как UTF-8 или используйте JSON.
  • Машиночитаемый синтаксис никогда не следует за языком интерфейса: ключи полей (id, name, email…), даты ISO, десятичные точки и имя таблицы fake_data в SQL остаются одинаковыми на всех языках, поэтому вывод можно импортировать напрямую.
  • Есть только десять фиксированных полей. Свои имена полей, типы, доля пустых значений, изменение порядка, внешние ключи и ограничения уникальности не поддерживаются; имена и телефоны могут повторяться, уникальность обеспечивается только для email внутри набора.
  • Случайность не является безопасной: зерно использует некриптографический хеш с mulberry32, а UUID только по форме v4. Не используйте их для паролей, токенов, ключей и всего, что должно быть непредсказуемым.
  • Для воспроизводимости нужен весь набор настроек: одно зерно, одинаковое число строк, одинаковые поля и одинаковый язык данных. Формат не участвует в случайном выборе, поэтому CSV, JSON и SQL можно переключать свободно.
  • Предел — 200 строк за генерацию, чтобы результат помещался в панель фиксированной высоты и обновлялся мгновенно. Для больших наборов нужно несколько пакетов или скрипт.
  • Истории, отмены и сохранения нет. Перезагрузка отбрасывает всё; вернуться можно только через зерно. Ничего не загружается, не хранится в localStorage и не пишется в URL.

Когда фикстура готова, обычно помогают эти инструменты.