419/419 teste trecute
Rata de succes 100%Suite de testare în producție cuprinzătoare care acoperă interacțiunile cu interfața grafică, punctele finale API, securitatea, performanța și.
Modernizarea Infrastructurii
467× Mai rapidÎn martie 2026, am migrat dintr-un VPS partajat pe un server dedicat cu 16× mai multă RAM, 5 workers de analizor paralel și toate modelele de 48 de.
Performanță Concurentă
Noul server gestionează sute de cereri simultane în toate serviciile fără niciun eșec.
| Serviciu | Concurrent | Succes | Mediu | RPS |
|---|---|---|---|---|
| Analyzer (spaCy) | 500 | 100% | 331 ms | 634 |
| Analyzer (12-lang mix) | 120 | 100% | 114 ms | 515 |
| Anonymizer | 1,000 | 100% | 8 ms | 1,501 |
| Structured Data | 100 | 100% | 331 ms | 144 |
| Frontend (Next.js) | 200 | 100% | 979 ms | 104 |
| Mixed Workload | 110 | 100% | 56 ms | 536 |
Viteza Conductei Complete
Latența end-to-end analiza + anonimizare pe serverul nou, măsurată cu toate modelele de limbă pregătite.
| Limbă | Motor | Conducta Medie | Entități |
|---|---|---|---|
| English | spaCy | 10.2 ms | 9 |
| German | spaCy | 13.4 ms | 9 |
| French | spaCy | 10.5 ms | 10 |
| Spanish | spaCy | 7.8 ms | 9 |
| Japanese | spaCy | 9.9 ms | 6 |
| Chinese | spaCy | 13.6 ms | 5 |
| Arabic | Transformer | 12.7 ms | 7 |
| Hebrew | Stanza | 117.3 ms | 6 |
Timpii serverului vechi includ conducta completă de test GUI (Playwright + API). Timpii serverului nou sunt benchmarks doar API cu toate modelele pregătite. Îmbunătățirea reflectă câștigurile de infrastructură reale: eliminarea pornirilor reci, 5× paralelism și stocare NVMe.
13 jaloane de testare
Fiecare jalon acoperă o zonă funcțională distinctă a platformei, de la autentificare la compatibilitate între browsere.
Authentication & Session
22/22 teste
Conectare, persistența sesiunii, profil, verificări de stare, gardieni de autentificare, deconectare/reconectare
PII Detection (Analyzer)
62/62 teste
Analiza în 48 de limbi prin interfață grafică, filtre de entități, praguri de scor, cazuri limită, comenzi rapide de tastatură
Anonymizer (5 Operators)
40/40 teste
Operatori Replace, Redact, Hash, Mask, Encrypt prin API și interfață grafică, acțiuni rapide, multilingv
Decrypt (Roundtrip)
22/22 teste
Rotații de criptare-apoi-decriptare pentru AES-256/128/192, multilingv, validare cheie, text mare
Batch & File Upload
20/20 teste
Procesare batch de text, interfață de încărcare fișiere, comutare file, status de procesare
Entity Management
28/28 teste
CRUD de entități pe 3 file, Creator AI, reguli de validare, verificare curățare
Preset Management
28/28 teste
CRUD de presetări pe 3 file, flux de aplicare, reguli de validare, verificare curățare
Settings (10 Tabs)
42/42 teste
Toate 10 file de setări: Cont, Facturare, Jetoane, Securitate, Istoric, Limbă, Chei de criptare, Servicii, Dezvoltator
API Security
35/35 teste
Puncte finale de bază, anteturi de securitate, politică CORS, validare intrare, securitate autentificare, limitare viteză
Token Usage Monitoring
24/24 teste
Consum de jetoane după dimensiune text, operator, limbă, filtru entitate, decriptare, batch, export CSV
Lighthouse & Quality
20/20 teste
Scoruri Lighthouse pe 8 pagini, capacitate de răspuns viewport, accesibilitate, SEO, erori consolă, linkuri rupte
48 Languages + RTL
56/56 teste
Analiza pentru toate 48 de limbi, 4 verificări de aspect RTL, comutare limbă, validare selector
Cross-Browser
20/20 teste
5 pagini pe Chromium, Firefox, WebKit și Mobile Chrome — zero erori consolă
Acoperire 48 de limbi
Fiecare limbă acceptată este testată cu mostre reale de PII. Trei tipuri de motoare NLP asigură precizie optimă pentru fiecare limbă.
| Limbă | Cod | Motor | Entități | Serverul Vechi | Serverul Nou | Câștig de Viteză | Status |
|---|---|---|---|---|---|---|---|
| English | en | spacy | 113 | 270 ms | 8 ms | 34× | |
| German | de | spacy | 148 | 313 ms | 7 ms | 45× | |
| Spanish | es | spacy | 104 | 1,841 ms | 6 ms | 307× | |
| French | fr | spacy | 133 | 2,327 ms | 8 ms | 291× | |
| Italian | it | spacy | 97 | 1,787 ms | 7 ms | 255× | |
| Portuguese | pt | spacy | 61 | 1,764 ms | 6 ms | 294× | |
| Dutch | nl | spacy | 122 | 2,486 ms | 6 ms | 414× | |
| Polish | pl | spacy | 70 | 1,726 ms | 8 ms | 216× | |
| Russian | ru | spacy | 41 | 2,226 ms | 6 ms | 371× | |
| Japanese | ja | spacy | 23 | 1,436 ms | 6 ms | 239× | |
| Chinese | zh | spacy | 24 | 2,554 ms | 7 ms | 365× | |
| Korean | ko | spacy | 16 | 1,305 ms | 6 ms | 218× | |
| Arabic | ar | transformer | 20 | 554 ms | 8 ms | 69× | |
| Hindi | hi | transformer | 22 | 486 ms | 7 ms | 69× | |
| Turkish | tr | spacy | 112 | 504 ms | 6 ms | 84× | |
| Romanian | ro | spacy | 122 | 1,730 ms | 6 ms | 288× | |
| Greek | el | spacy | 29 | 1,822 ms | 7 ms | 260× | |
| Croatian | hr | spacy | 67 | 989 ms | 7 ms | 141× | |
| Slovenian | sl | spacy | 64 | 1,264 ms | 7 ms | 181× | |
| Macedonian | mk | spacy | 24 | 1,259 ms | 7 ms | 180× | |
| Swedish | sv | spacy | 140 | 1,002 ms | 6 ms | 167× | |
| Danish | da | spacy | 107 | 1,910 ms | 7 ms | 273× | |
| Norwegian | nb | spacy | 109 | 1,606 ms | 7 ms | 229× | |
| Finnish | fi | spacy | 118 | 1,229 ms | 7 ms | 176× | |
| Icelandic | is | transformer | 73 | 559 ms | 8 ms | 70× | |
| Ukrainian | uk | spacy | 25 | 1,434 ms | 9 ms | 159× | |
| Lithuanian | lt | spacy | 86 | 1,601 ms | 7 ms | 229× | |
| Bulgarian | bg | stanza | 24 | 8,735 ms | 98 ms | 89× | |
| Serbian | sr | transformer | 24 | 519 ms | 8 ms | 65× | |
| Hungarian | hu | stanza | 82 | 8,141 ms | 39 ms | 209× | |
| Czech | cs | transformer | 81 | 562 ms | 8 ms | 70× | |
| Slovak | sk | transformer | 70 | 577 ms | 8 ms | 72× | |
| Latvian | lv | transformer | 83 | 526 ms | 8 ms | 66× | |
| Estonian | et | transformer | 79 | 531 ms | 8 ms | 66× | |
| Hebrew | he | stanza | 17 | 8,850 ms | 101 ms | 88× | |
| Persian | fa | transformer | 12 | 439 ms | 7 ms | 63× | |
| Vietnamese | vi | stanza | 74 | 11,282 ms | 99 ms | 114× | |
| Indonesian | id | transformer | 79 | 524 ms | 7 ms | 75× | |
| Thai | th | transformer | 20 | 521 ms | 5 ms | 104× | |
| Malay | ms | transformer | 87 | 510 ms | 7 ms | 73× | |
| Filipino | tl | transformer | 75 | 501 ms | 7 ms | 72× | |
| Bengali | bn | transformer | 18 | 455 ms | 7 ms | 65× | |
| Urdu | ur | transformer | 12 | 445 ms | 7 ms | 64× | |
| Afrikaans | af | stanza | 119 | 7,867 ms | 55 ms | 143× | |
| Swahili | sw | transformer | 68 | 526 ms | 7 ms | 75× | |
| Armenian | hy | stanza | 69 | 19,643 ms | 85 ms | 231× | |
| Catalan | ca | spacy | 100 | 3,267 ms | 7 ms | 467× | |
| Basque | eu | stanza | 82 | 783 ms | 40 ms | 20× |
Compatibilitate între browsere
5 pagini critice testate pe 4 motoare de browser fără erori în consolă și fără depășire orizontală.
Chromium
5 din 5 pagini
Toate trecFirefox
5 din 5 pagini
Toate trecWebKit
5 din 5 pagini
Toate trecMobile Chrome
5 din 5 pagini
Toate trecTestarea securității
35 teste35 de teste de securitate dedicate care acoperă punctele finale API, anteturi, CORS, validare intrare, autentificare și limitare viteză.
Puncte finale de bază
8 tests8 teste care verifică accesibilitatea punctului final API și codurile de răspuns
Anteturi de securitate
6 tests6 teste pentru CSP, X-Frame-Options, HSTS și altele
Politică CORS
5 tests5 teste pentru gestionarea cererilor între origini
Validare intrare
6 tests6 teste pentru XSS, injecție SQL și intrare malformată
Securitate autentificare
5 tests5 teste pentru ocolire autentificare și securitate sesiune
Limitare viteză
5 tests5 teste pentru aplicarea limitei de viteză API și anteturi Retry-After
Analiza utilizării jetoanelor
Total jetoane utilizate: 76822 teste de consum de jetoane care măsoară eficiența costului pe operații, dimensiuni text, limbi și operatori.
| Operație | Caractere | Limbă | Entități | Operator | Jetoane | Timp de răspuns |
|---|---|---|---|---|---|---|
| analyze | 50 | en | 44 | N/A | 4 | 220 ms |
| analyze | 200 | en | 140 | N/A | 9 | 276 ms |
| analyze | 500 | en | 387 | N/A | 21 | 367 ms |
| analyze | 1,000 | en | 745 | N/A | 39 | 542 ms |
| analyze | 5,000 | en | 3776 | N/A | 193 | 4,398 ms |
| analyze | 10,000 | en | 7566 | N/A | 385 | 14,494 ms |
| anonymize | 160 | en | 113 | replace | 7 | 291 ms |
| anonymize | 160 | en | 113 | redact | 7 | 236 ms |
| anonymize | 160 | en | 113 | hash | 7 | 243 ms |
| anonymize | 160 | en | 113 | mask | 7 | 276 ms |
| anonymize | 160 | en | 113 | encrypt | 7 | 242 ms |
| analyze | 165 | de | 148 | N/A | 9 | 272 ms |
| analyze | 151 | fr | 133 | N/A | 9 | 282 ms |
| analyze | 75 | ja | 23 | N/A | 3 | 1,608 ms |
| analyze | 125 | ru | 41 | N/A | 4 | 2,588 ms |
| analyze | 113 | ar | 20 | N/A | 3 | 501 ms |
| analyze | 63 | zh | 24 | N/A | 3 | 2,591 ms |
| analyze | 160 | en | 106 | PERSON only | 7 | 258 ms |
| analyze | 160 | en | 108 | PERSON+EMAIL+PHONE | 8 | 266 ms |
| analyze | 160 | en | 113 | All entities | 8 | 264 ms |
| decrypt | 342 | en | 37 | decrypt | 2 | 188 ms |
| batch-analyze | 476 | en,de,fr | 394 | N/A | 26 | 5,278 ms |
Metodologie de testare
Suite de testare combine testarea Playwright la nivel GUI cu validare API directă pentru acoperire cuprinzătoare.
Testare GUI
Automatizarea browserului Playwright testează fluxuri de lucru reale ale utilizatorului — clic butoane, completare formulare, navigare între pagini și verificare rezultat vizual.
Testare API
Cererile HTTP directe validează fiecare punct final cu cazuri limită, intrare malformată și condiții la limită pe care testarea GUI singură nu o poate acoperi.
Caching sesiune
Sesiunile autentificate sunt memorate și reutilizate pe jaloane, reducând timp execuție teste menținând comportament utilizator realist.
Curățare CRUD
Fiecare entitate, presetare și cheie de criptare creată în timpul testării este curățată apoi, asigurând că teste sunt idempotente și repetabile.