419/419 тестова пролази
Стопа успеха од 100%Сveobuhvatан набор тестова у продукцији који покрива интеракције графичког корисничког интерфејса, крајње тачке API-ја, безбедност, перформансе и.
Надградња Инфраструктуре
До 467× БржеУ марту 2026. мигрирали смо са дељеног VPS-а на дедициран сервер са 16× више RAM-а, 5 паралелних радних процеса анализатора и свих 48 језичких модела.
Истовремена Перформанса
Нови сервер управља стотинама истовремених захтева кроз све услуге без грешака.
| Услуга | Истовремено | Успех | Просечан | 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 |
Брзина Пуног Цевовода
Латенција од краја до краја анализирати + анонимизирати на новом серверу, мерена са свим топлим језичким моделима.
| Језик | Мотор | Просечан Цевовода | Ентитети |
|---|---|---|---|
| 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 |
Стари времена сервера укључују цеву за тестирање пуног GUI-ја (Playwright + API). Нова времена сервера су само еталонски тестови API-ја са свим топлим моделима. Побољшање одражава права побољшања инфраструктуре: елиминисан хладан покрен, паралелизам 5× и складиште NVMe.
13 веха тестирања
Свака веха покрива различито функционално подручје платформе, од аутентификације до компатибилности прегледача.
Authentication & Session
22/22 тестова
Пријава, упорност сесије, профил, проверке здравља, заштита аутентификације, одјава/поновна пријава
PII Detection (Analyzer)
62/62 тестова
Анализа од 48 језика преко графичког корисничког интерфејса, филтери ентитета, прагови резултата, граничних примера, пречице на тастатури
Anonymizer (5 Operators)
40/40 тестова
Оператори Replace, Redact, Hash, Mask, Encrypt преко API-ја и графичког корисничког интерфејса, брзе акције, вишејезична
Decrypt (Roundtrip)
22/22 тестова
Шифровање затим дешифровање круга за AES-256/128/192, вишејезична, валидирање кључа, велики текст
Batch & File Upload
20/20 тестова
Обработка серијског текста, кориснички интерфејс за отпремање датотека, скакање између картица, статус обработке
Entity Management
28/28 тестова
CRUD ентитета кроз 3 картице, AI Creator, правила валидације, верификација чишћења
Preset Management
28/28 тестова
CRUD предефинисаних садржаја кроз 3 картице, ток применe, правила валидације, верификација чишћења
Settings (10 Tabs)
42/42 тестова
Свих 10 картица подешавања: Налог, Наплата, Токени, Безбедност, Историја, Језик, Кључи за шифровање, Услуге, Развој
API Security
35/35 тестова
Главне крајње тачке, заглављa безбедности, политика CORS, валидирање уноса, безбедност аутентификације, ограничење брзине
Token Usage Monitoring
24/24 тестова
Потрошња токена по величини текста, оператору, језику, филтеру ентитета, дешифровање, серијско, извоз CSV
Lighthouse & Quality
20/20 тестова
Lighthouse резултати на 8 страница, одзивност приказа, приступачност, SEO, грешке у конзоли, прекинуте везе
48 Languages + RTL
56/56 тестова
Анализа за сви 48 језика, 4 провере RTL расподеле, скакање између језика, валидирање селектора
Cross-Browser
20/20 тестова
5 страница кроз Chromium, Firefox, WebKit и Mobile Chrome — без грешака у конзоли
Покривеност од 48 језика
Сваки подржан језик је тестиран са правим PII узorcима. Три врсте NLP мотора обезбеђују оптималну прецизност по језику.
| Језик | Код | Мотор | Ентитети | Стари Сервер | Нови Сервер | Добитак на Брзину | Статус |
|---|---|---|---|---|---|---|---|
| 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× |
Компатибилност између прегледача
5 критичних страница је тестирано кроз 4 мотора прегледача без грешака у конзоли и без хоризонталног преливања.
Chromium
5 од 5 страница
Све у редуFirefox
5 од 5 страница
Све у редуWebKit
5 од 5 страница
Све у редуMobile Chrome
5 од 5 страница
Све у редуТестирање безбедности
35 тестова35 намењених тестова безбедности који покривају крајње тачке API-ја, заглављe, CORS, валидирање уноса, аутентификацију и ограничење брзине.
Главне крајње тачке
8 tests8 тестова верификације приступачности крајних тачака API-ја и кодова одговора
Заглављa безбедности
6 tests6 тестова за CSP, X-Frame-Options, HSTS и више
Политика CORS
5 tests5 тестова за руковање захтевима из других извора
Валидирање уноса
6 tests6 тестова за XSS, SQL инјекцију и неправилно обликован унос
Безбедност аутентификације
5 tests5 тестова за заобилажење аутентификације и безбедност сесије
Ограничење брзине
5 tests5 тестова за примену ограничења брзине API-ја и заглављe Retry-After
Анализа потрошње токена
Укупно коришћених токена: 76822 теста потрошње токена која мере ефикасност цена кроз операције, величине текста, језике и операторе.
| Операција | Знакови | Језик | Ентитети | Оператор | Токени | Време одговора |
|---|---|---|---|---|---|---|
| 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 |
Методологија тестирања
Наш набор тестова комбинује тестирање на нивоу графичког корисничког интерфејса са Playwright са директном валидацијом API-ја за свеобухватну покривеност.
Тестирање графичког корисничког интерфејса
Аутоматизација прегледача Playwright тестира стварне токове рада корисника — кликање на дугме, попуњавање образаца, крeтање између страница и верификација визуелног излаза.
Тестирање API-ја
Директни HTTP захтеви валидирају сваку крајњу тачку са граничним примерима, неправилно обликованим уносом и граничним условима које само тестирање графичког корисничког интерфејса не може да покрије.
Кеширање сесије
Овeрeне сесије су кеширане и поново коришћене кроз вехе, што скраћује време извршавања тестова док се задржава реалистично понашање корисника.
CRUD чишћење
Сваки ентитет, предефинисани садржај и кључ за шифровање створен за време тестирања се очисти касније, обезбеђујући да су тестови идемпотентни и поновљиви.