In der modernen Softwareentwicklung ist die Qualität der verwendeten Testdaten entscheidend für den Erfolg eines Projekts. Besonders bei der Arbeit mit internationalen Identifikationsnummern stoßen Entwickler oft auf die Herausforderung, syntaktisch korrekte Daten zu generieren, die komplexe Validierungsalgorithmen bestehen. Die Python-Bibliothek mock-jutsu bietet hierfür eine elegante Lösung. Mit der Funktion es_nie aus der Kategorie IntlIDs lassen sich spanische NIE-Nummern (Número de Identidad de Extranjero) im Handumdrehen erzeugen, die exakt den offiziellen regulatorischen Anforderungen entsprechen.
Die Funktion es_nie generiert Mock-Daten, die dem standardisierten spanischen Format folgen: Einem führenden Buchstaben (X, Y oder Z), gefolgt von einer siebenstelligen Ziffernfolge und einem abschließenden Prüfbuchstaben. Der Clou liegt in der mathematischen Korrektheit: mock-jutsu implementiert den offiziellen MOD-23-Algorithmus zur Berechnung des Kontrollbuchstabens. Dabei werden die Präfixe X, Y und Z als numerische Werte (0, 1 oder 2) behandelt, um die Prüfziffer exakt so zu bestimmen, wie es staatliche Behörden oder Bankensysteme in Spanien tun würden. Ein generiertes Beispiel wie X1234567L ist somit nicht nur ein zufälliger String, sondern ein valider Datensatz für Ihre Testumgebung.
Die Einbindung in den Workflow ist denkbar einfach und flexibel gestaltet. Python-Entwickler können die Funktion direkt über jutsu.generate('es_nie') in ihre Unit-Tests oder Data-Pipelines integrieren. Werden Testdaten ad hoc für die Shell oder zur Dokumentation benötigt, liefert das CLI-Tool mit dem Befehl mockjutsu generate es_nie sofortige Ergebnisse. Für professionelle Last- und Performance-Tests unterstützt mock-jutsu zudem JMeter. Durch den Ausdruck ${__mockjutsu(es_nie,)} lassen sich tausende individuelle Testdaten dynamisch in Testpläne einbetten, um Datenbanken unter realistischen Bedingungen zu prüfen.
Der Einsatz von es_nie bietet Entwicklern enorme Vorteile hinsichtlich Effizienz und Datenschutz. Anstatt echte, sensible Identitätsdaten zu verwenden, was oft gegen die DSGVO verstößt, ermöglicht mock-jutsu die Arbeit mit anonymen, aber strukturell identischen Mock-Daten. Dies ist besonders kritisch bei der Entwicklung von Fintech-Apps, Registrierungsformularen oder CRM-Systemen für den spanischen Markt. Durch die Automatisierung der Datenerzeugung werden menschliche Fehler eliminiert und die Testabdeckung signifikant erhöht, da auch Randfälle und verschiedene Präfix-Kombinationen systematisch abgedeckt werden können.
mockjutsu generate es_niemockjutsu bulk es_nie --count 10mockjutsu export es_nie --count 10 --format jsonmockjutsu export es_nie --count 10 --format csvmockjutsu export es_nie --count 10 --format sql# --mask: regulation-compliant output (PCI DSS / GDPR / KVKK)mockjutsu generate es_nie --maskmockjutsu bulk es_nie --count 5 --maskfrom mockjutsu import jutsujutsu.generate('es_nie')jutsu.bulk('es_nie', count=10)jutsu.template(['es_nie'], count=5)# mask=True: regulation-compliant outputjutsu.generate('es_nie', mask=True)jutsu.bulk('es_nie', count=5, mask=True)${__mockjutsu_intl_ids(es_nie)}# JMeter Function: __mockjutsu_intl_ids# Parameter 1: es_nie# Parameter 2: (not required for this function)# Add 'mask' keyword to get a regulation-compliant masked value${__mockjutsu_intl_ids(es_nie,mask)}GET /generate/es_nie# → {"type":"es_nie","result":"...","status":"ok"}GET /bulk/es_nie?count=10POST /template {"types":["es_nie"],"count":1}# mask=true: regulation-compliant outputGET /generate/es_nie?mask=trueGET /bulk/es_nie?count=5&mask=true| Parameter | Werte | Beschreibung |
|---|---|---|
| --mask | true | false | Return a regulation-compliant masked value (PCI DSS, GDPR, KVKK…) |