419/419 Tests Passing
100% Pass RateComprehensive production test suite covering GUI interactions, API endpoints, security, performance, and cross-browser compatibility — all verified with Playwright and automated API testing.
13 Test Milestones
Each milestone covers a distinct functional area of the platform, from authentication to cross-browser compatibility.
Authentication & Session
22/22 tests
Login, session persistence, profile, health checks, auth guards, logout/re-login
PII Detection (Analyzer)
62/62 tests
48-language analysis via GUI, entity filters, score thresholds, edge cases, keyboard shortcuts
Anonymizer (5 Operators)
40/40 tests
Replace, Redact, Hash, Mask, Encrypt operators via API and GUI, quick actions, multi-language
Decrypt (Roundtrip)
22/22 tests
Encrypt-then-decrypt roundtrips for AES-256/128/192, multi-language, key validation, large text
Batch & File Upload
20/20 tests
Batch text processing, file upload UI, tab switching, processing status
Entity Management
28/28 tests
Entity CRUD across 3 tabs, AI Creator, validation rules, cleanup verification
Preset Management
28/28 tests
Preset CRUD across 3 tabs, apply flow, validation rules, cleanup verification
Settings (10 Tabs)
42/42 tests
All 10 settings tabs: Account, Billing, Tokens, Security, History, Language, Encryption Keys, Services, Developer
API Security
35/35 tests
Core endpoints, security headers, CORS policy, input validation, auth security, rate limiting
Token Usage Monitoring
24/24 tests
Token consumption by text size, operator, language, entity filter, decrypt, batch, CSV export
Lighthouse & Quality
20/20 tests
Lighthouse scores on 8 pages, viewport responsiveness, accessibility, SEO, console errors, broken links
48 Languages + RTL
56/56 tests
Analysis for all 48 languages, 4 RTL layout checks, language switching, selector validation
Cross-Browser
20/20 tests
5 pages across Chromium, Firefox, WebKit, and Mobile Chrome — zero console errors
48-Language Coverage
Every supported language is tested with real PII samples. Three NLP engine types ensure optimal accuracy per language.
| Language | Code | Engine | Entities | Response Time | Status |
|---|---|---|---|---|---|
| English | en | spacy | 113 | 270 ms | |
| German | de | spacy | 148 | 313 ms | |
| Spanish | es | spacy | 104 | 1,841 ms | |
| French | fr | spacy | 133 | 2,327 ms | |
| Italian | it | spacy | 97 | 1,787 ms | |
| Portuguese | pt | spacy | 61 | 1,764 ms | |
| Dutch | nl | spacy | 122 | 2,486 ms | |
| Polish | pl | spacy | 70 | 1,726 ms | |
| Russian | ru | spacy | 41 | 2,226 ms | |
| Japanese | ja | spacy | 23 | 1,436 ms | |
| Chinese | zh | spacy | 24 | 2,554 ms | |
| Korean | ko | spacy | 16 | 1,305 ms | |
| Arabic | ar | transformer | 20 | 554 ms | |
| Hindi | hi | transformer | 22 | 486 ms | |
| Turkish | tr | spacy | 112 | 504 ms | |
| Romanian | ro | spacy | 122 | 1,730 ms | |
| Greek | el | spacy | 29 | 1,822 ms | |
| Croatian | hr | spacy | 67 | 989 ms | |
| Slovenian | sl | spacy | 64 | 1,264 ms | |
| Macedonian | mk | spacy | 24 | 1,259 ms | |
| Swedish | sv | spacy | 140 | 1,002 ms | |
| Danish | da | spacy | 107 | 1,910 ms | |
| Norwegian | nb | spacy | 109 | 1,606 ms | |
| Finnish | fi | spacy | 118 | 1,229 ms | |
| Icelandic | is | transformer | 73 | 559 ms | |
| Ukrainian | uk | spacy | 25 | 1,434 ms | |
| Lithuanian | lt | spacy | 86 | 1,601 ms | |
| Bulgarian | bg | stanza | 24 | 8,735 ms | |
| Serbian | sr | transformer | 24 | 519 ms | |
| Hungarian | hu | stanza | 82 | 8,141 ms | |
| Czech | cs | transformer | 81 | 562 ms | |
| Slovak | sk | transformer | 70 | 577 ms | |
| Latvian | lv | transformer | 83 | 526 ms | |
| Estonian | et | transformer | 79 | 531 ms | |
| Hebrew | he | stanza | 17 | 8,850 ms | |
| Persian | fa | transformer | 12 | 439 ms | |
| Vietnamese | vi | stanza | 74 | 11,282 ms | |
| Indonesian | id | transformer | 79 | 524 ms | |
| Thai | th | transformer | 20 | 521 ms | |
| Malay | ms | transformer | 87 | 510 ms | |
| Filipino | tl | transformer | 75 | 501 ms | |
| Bengali | bn | transformer | 18 | 455 ms | |
| Urdu | ur | transformer | 12 | 445 ms | |
| Afrikaans | af | stanza | 119 | 7,867 ms | |
| Swahili | sw | transformer | 68 | 526 ms | |
| Armenian | hy | stanza | 69 | 19,643 ms | |
| Catalan | ca | spacy | 100 | 3,267 ms | |
| Basque | eu | stanza | 82 | 783 ms |
Cross-Browser Compatibility
5 critical pages tested across 4 browser engines with zero console errors and no horizontal overflow.
Chromium
5 of 5 pages
All PassingFirefox
5 of 5 pages
All PassingWebKit
5 of 5 pages
All PassingMobile Chrome
5 of 5 pages
All PassingSecurity Testing
35 Tests35 dedicated security tests covering API endpoints, headers, CORS, input validation, authentication, and rate limiting.
Core Endpoints
8 tests8 tests verifying API endpoint accessibility and response codes
Security Headers
6 tests6 tests for CSP, X-Frame-Options, HSTS, and more
CORS Policy
5 tests5 tests for cross-origin request handling
Input Validation
6 tests6 tests for XSS, SQL injection, and malformed input
Auth Security
5 tests5 tests for authentication bypass and session security
Rate Limiting
5 tests5 tests for API rate limit enforcement and Retry-After headers
Token Usage Analysis
Total Tokens Used: 76822 token consumption tests measuring cost efficiency across operations, text sizes, languages, and operators.
| Operation | Chars | Language | Entities | Operator | Tokens | Response Time |
|---|---|---|---|---|---|---|
| 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 |
Testing Methodology
Our test suite combines GUI-level Playwright testing with direct API validation for comprehensive coverage.
GUI Testing
Playwright browser automation tests real user workflows — clicking buttons, filling forms, navigating between pages, and verifying visual output.
API Testing
Direct HTTP requests validate every endpoint with edge cases, malformed input, and boundary conditions that GUI testing alone cannot cover.
Session Caching
Authenticated sessions are cached and reused across milestones, reducing test runtime while maintaining realistic user behavior.
CRUD Cleanup
Every entity, preset, and encryption key created during testing is cleaned up afterward, ensuring tests are idempotent and repeatable.