В процессе разработки и тестирования информационных систем, ориентированных на скандинавский рынок, специалисты часто сталкиваются с необходимостью использования специфических региональных идентификаторов. Библиотека mock-jutsu предлагает элегантное решение для генерации таких идентификаторов, предоставляя функцию dk_cpr. Эта функция предназначена для создания датских персональных идентификационных номеров, известных как CPR (Det Centrale Personregister). Использование dk_cpr позволяет инженерам по качеству и разработчикам быстро получать валидные мок-данные, которые визуально и структурно идентичны реальным документам, используемым в государственном секторе, банковской сфере и здравоохранении Дании.
Технически датский номер CPR представляет собой десятизначную строку в формате DDMMYY-SSSS. Первые шесть цифр кодируют дату рождения владельца, за которыми следует дефис и уникальный четырехзначный серийный номер. Важной особенностью функции dk_cpr в составе mock-jutsu является соблюдение актуальных стандартов: генерация учитывает изменения, принятые после 2007 года. С этого момента строгая проверка контрольной суммы (алгоритм modulus 11) перестала быть обязательной для новых номеров из-за исчерпания доступных комбинаций. Таким образом, инструмент генерирует тестовые данные, которые идеально подходят для проверки масок ввода, валидации длины строк и корректности парсинга даты рождения в современных системах.
Сценарии применения функции dk_cpr охватывают широкий спектр задач — от модульного тестирования до масштабных нагрузочных испытаний. Например, при проектировании пользовательского интерфейса для регистрационной формы мок-данные помогают убедиться в правильном отображении разделителей и ограничений поля ввода. В рамках интеграционного тестирования API использование mock-jutsu гарантирует, что передаваемые идентификаторы соответствуют ожидаемому формату, что исключает ошибки на стороне сервера. Кроме того, автоматическая генерация позволяет избежать использования реальных персональных данных, что критически важно для соблюдения требований GDPR и обеспечения безопасности конфиденциальной информации в тестовых средах.
Интеграция функции в рабочий процесс максимально упрощена и поддерживает различные уровни использования. Разработчики могут вызывать генерацию напрямую из кода на Python с помощью конструкции jutsu.generate('dk_cpr'), что удобно для динамического создания объектов. Для быстрой проверки или наполнения баз данных через скрипты доступен интерфейс командной строки с командой mockjutsu generate dk_cpr. Специалисты по нагрузочному тестированию оценят поддержку популярного инструмента JMeter, где генерация идентификатора осуществляется простым вызовом функции ${__mockjutsu(dk_cpr,)}. Такой комплексный подход делает mock-jutsu незаменимым инструментом для создания качественных и надежных программных продуктов с международной локализацией.
mockjutsu generate dk_cprmockjutsu bulk dk_cpr --count 10mockjutsu export dk_cpr --count 10 --format jsonmockjutsu export dk_cpr --count 10 --format csvmockjutsu export dk_cpr --count 10 --format sql# --mask: regulation-compliant output (PCI DSS / GDPR / KVKK)mockjutsu generate dk_cpr --maskmockjutsu bulk dk_cpr --count 5 --maskfrom mockjutsu import jutsujutsu.generate('dk_cpr')jutsu.bulk('dk_cpr', count=10)jutsu.template(['dk_cpr'], count=5)# mask=True: regulation-compliant outputjutsu.generate('dk_cpr', mask=True)jutsu.bulk('dk_cpr', count=5, mask=True)${__mockjutsu_intl_ids(dk_cpr)}# JMeter Function: __mockjutsu_intl_ids# Parameter 1: dk_cpr# Parameter 2: (not required for this function)# Add 'mask' keyword to get a regulation-compliant masked value${__mockjutsu_intl_ids(dk_cpr,mask)}GET /generate/dk_cpr# → {"type":"dk_cpr","result":"...","status":"ok"}GET /bulk/dk_cpr?count=10POST /template {"types":["dk_cpr"],"count":1}# mask=true: regulation-compliant outputGET /generate/dk_cpr?mask=trueGET /bulk/dk_cpr?count=5&mask=true| Параметр | Значения | Описание |
|---|---|---|
| --mask | true | false | Return a regulation-compliant masked value (PCI DSS, GDPR, KVKK…) |