В процессе разработки современных финансовых и государственных систем критически важно использовать качественные тестовые данные, которые полностью соответствуют региональным стандартам. Библиотека mock-jutsu предлагает мощный инструмент для генерации таких данных, и одной из ключевых функций в категории международных идентификаторов является za_idnr. Эта функция предназначена для создания валидных номеров удостоверений личности Южно-Африканской Республики (South African ID), обеспечивая разработчиков и тестировщиков надежной базой для проверки логики приложений без использования реальных персональных данных, что критически важно для соблюдения политик конфиденциальности.
Структура номера, который генерирует za_idnr, строго следует официальному государственному стандарту. Идентификатор состоит из 13 цифр, где первые шесть представляют собой дату рождения в формате YYMMDD. Следующие четыре цифры определяют пол владельца: значения от 0000 до 4999 зарезервированы для женщин, а от 5000 до 9999 — для мужчин. Одиннадцатая цифра указывает на статус гражданства, а финальный символ является контрольной суммой. Важно отметить, что mock-jutsu автоматически вычисляет последнюю цифру по алгоритму Луна (Luhn check), что делает сгенерированные мок-данные абсолютно валидными для любых систем автоматической проверки вводимых значений и фронтенд-валидаторов.
Интеграция функции максимально упрощена для различных рабочих сред и стеков технологий. Разработчики на Python могут вызвать генерацию через метод jutsu.generate('za_idnr'), что идеально подходит для написания юнит-тестов или динамического наполнения локальных баз данных. Для системных администраторов и инженеров автоматизации предусмотрен удобный интерфейс командной строки: команда mockjutsu generate za_idnr позволяет мгновенно получить нужный идентификатор в терминале. Кроме того, встроенная поддержка в JMeter через выражение ${__mockjutsu(za_idnr,)} делает библиотеку незаменимым помощником при проведении масштабного нагрузочного тестирования, когда требуются тысячи уникальных и корректных записей для эмуляции пользовательского трафика.
Сценарии применения функции za_idnr охватывают широкий спектр задач: от отладки экранных форм регистрации в банковском ПО до миграции данных и стресс-тестирования систем учета. Использование этого инструмента в mock-jutsu позволяет полностью исключить риски, связанные с обработкой реальных PII-данных (Personally Identifiable Information). Все создаваемые тестовые данные являются синтетическими, но при этом структурно идентичными настоящим документам. Это значительно повышает безопасность процесса разработки, упрощает прохождение аудитов и ускоряет цикл CI/CD, предоставляя команде готовую и надежную инфраструктуру для эмуляции поведения реальных пользователей из Южной Африки.
mockjutsu generate za_idnrmockjutsu bulk za_idnr --count 10mockjutsu export za_idnr --count 10 --format jsonmockjutsu export za_idnr --count 10 --format csvmockjutsu export za_idnr --count 10 --format sql# --mask: regulation-compliant output (PCI DSS / GDPR / KVKK)mockjutsu generate za_idnr --maskmockjutsu bulk za_idnr --count 5 --maskfrom mockjutsu import jutsujutsu.generate('za_idnr')jutsu.bulk('za_idnr', count=10)jutsu.template(['za_idnr'], count=5)# mask=True: regulation-compliant outputjutsu.generate('za_idnr', mask=True)jutsu.bulk('za_idnr', count=5, mask=True)${__mockjutsu_intl_ids(za_idnr)}# JMeter Function: __mockjutsu_intl_ids# Parameter 1: za_idnr# Parameter 2: (not required for this function)# Add 'mask' keyword to get a regulation-compliant masked value${__mockjutsu_intl_ids(za_idnr,mask)}GET /generate/za_idnr# → {"type":"za_idnr","result":"...","status":"ok"}GET /bulk/za_idnr?count=10POST /template {"types":["za_idnr"],"count":1}# mask=true: regulation-compliant outputGET /generate/za_idnr?mask=trueGET /bulk/za_idnr?count=5&mask=true| Параметр | Значения | Описание |
|---|---|---|
| --mask | true | false | Return a regulation-compliant masked value (PCI DSS, GDPR, KVKK…) |