ro_cnpIntlIDs

Mock Jutsu HOW-TO | RU

В процессе разработки и тестирования программного обеспечения, ориентированного на европейский рынок, критически важно использовать реалистичные и валидные идентификаторы. Библиотека mock-jutsu предоставляет разработчикам удобный инструмент для решения этой задачи с помощью функции ro_cnp. Данная функция предназначена для генерации румынского персонального числового кода (Cod Numeric Personal), который является обязательным атрибутом для регистрации граждан, открытия банковских счетов и взаимодействия с государственными сервисами Румынии. Использование этой функции позволяет быстро создавать качественные мок-данные, которые не только выглядят достоверно, но и проходят строгие проверки на уровне бизнес-логики приложений.

Технически функция ro_cnp генерирует строку из 13 цифр, строго следуя официальному государственному стандарту. Структура CNP включает в себя информацию о поле человека, веке его рождения, полной дате рождения и уникальном коде региона. Однако наиболее важным аспектом является финальная тринадцатая цифра — контрольный разряд. Он вычисляется на основе алгоритма MOD-11 с использованием фиксированного набора весовых коэффициентов. Благодаря тому, что mock-jutsu в точности воспроизводит этот математический алгоритм, генерируемые тестовые данные успешно проходят валидацию в любых системах, использующих проверку контрольной суммы, что исключает ложноположительные ошибки при автоматизированном тестировании.

Сценарии применения функции ro_cnp охватывают практически все этапы жизненного цикла разработки. Она незаменима при тестировании форм регистрации, систем KYC (Know Your Customer) и баз данных, где требуется заполнение профилей пользователей. Вместо поиска реальных идентификаторов, что могло бы нарушить требования GDPR и корпоративные политики безопасности, инженеры могут генерировать неограниченное количество уникальных записей. Это особенно полезно для нагрузочного тестирования, когда необходимо имитировать активность тысяч пользователей из Румынии, обеспечивая при этом корректность каждого передаваемого идентификатора в теле запроса.

Гибкость библиотеки mock-jutsu позволяет интегрировать генерацию данных в любой рабочий процесс. Python-разработчики могут использовать простой вызов jutsu.generate('ro_cnp') внутри своих скриптов или тестов на Pytest. Для быстрой генерации через командную строку предусмотрена CLI-команда mockjutsu generate ro_cnp, что удобно для ручного тестирования API. Кроме того, поддержка JMeter через конструкцию ${__mockjutsu(ro_cnp,)} делает инструмент идеальным выбором для инженеров по производительности, позволяя динамически подставлять валидные значения в HTTP-запросы без необходимости предварительной подготовки громоздких CSV-файлов.

В конечном итоге, использование функции ro_cnp значительно повышает эффективность команды разработки. Автоматизация создания сложных национальных идентификаторов избавляет от ручного труда и минимизирует риски, связанные с использованием некорректных данных. Выбирая mock-jutsu, вы получаете надежный фундамент для построения качественных тестов, гарантируя стабильную работу вашего продукта в специфических региональных условиях.

Использование CLI
mockjutsu generate ro_cnpmockjutsu bulk ro_cnp --count 10mockjutsu export ro_cnp --count 10 --format jsonmockjutsu export ro_cnp --count 10 --format csvmockjutsu export ro_cnp --count 10 --format sql# --mask: regulation-compliant output (PCI DSS / GDPR / KVKK)mockjutsu generate ro_cnp --maskmockjutsu bulk ro_cnp --count 5 --mask
Python API
from mockjutsu import jutsujutsu.generate('ro_cnp')jutsu.bulk('ro_cnp', count=10)jutsu.template(['ro_cnp'], count=5)# mask=True: regulation-compliant outputjutsu.generate('ro_cnp', mask=True)jutsu.bulk('ro_cnp', count=5, mask=True)
JMeter
${__mockjutsu_intl_ids(ro_cnp)}# JMeter Function: __mockjutsu_intl_ids# Parameter 1: ro_cnp# Parameter 2: (not required for this function)# Add 'mask' keyword to get a regulation-compliant masked value${__mockjutsu_intl_ids(ro_cnp,mask)}
REST API
GET /generate/ro_cnp# → {"type":"ro_cnp","result":"...","status":"ok"}GET /bulk/ro_cnp?count=10POST /template {"types":["ro_cnp"],"count":1}# mask=true: regulation-compliant outputGET /generate/ro_cnp?mask=trueGET /bulk/ro_cnp?count=5&mask=true

Параметры

Параметр Значения Описание
--mask true | false Return a regulation-compliant masked value (PCI DSS, GDPR, KVKK…)

Другие языки