419/419 тестов пройдено
100% успешностьКомплексный набор тестов производства, охватывающий взаимодействие с GUI, конечные точки 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 языках через GUI, фильтры сущностей, пороги оценок, пограничные случаи, комбинации клавиш
Anonymizer (5 Operators)
40/40 тесты
Операторы Replace, Redact, Hash, Mask, Encrypt через API и GUI, быстрые действия, многоязычность
Decrypt (Roundtrip)
22/22 тесты
Раунды шифрования-затем-расшифровки для AES-256/128/192, многоязычность, проверка ключей, большой текст
Batch & File Upload
20/20 тесты
Пакетная обработка текста, пользовательский интерфейс загрузки файлов, переключение вкладок, статус обработки
Entity Management
28/28 тесты
CRUD сущностей на 3 вкладках, Создатель AI, правила проверки, проверка очистки
Preset Management
28/28 тесты
CRUD предустановок на 3 вкладках, рабочий процесс приложения, правила проверки, проверка очистки
Settings (10 Tabs)
42/42 тесты
Все 10 вкладок настроек: Учетная запись, Выставление счетов, Токены, Безопасность, История, Язык, Ключи шифрования, Услуги, Разработчик
API Security
35/35 тесты
Основные конечные точки, заголовки безопасности, политика 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 и мобильном Chrome — ноль ошибок консоли
Охват 48 языков
Каждый поддерживаемый язык тестируется с реальными образцами PII. Три типа двигателей NLP обеспечивают оптимальную точность для каждого языка.
| Язык | Код | Двигатель | Сущности | Старый сервер | Новый сервер | Ускорение | Статус |
|---|---|---|---|---|---|---|---|
| English | en | spacy | 113 | 270 мс | 8 мс | 34× | |
| German | de | spacy | 148 | 313 мс | 7 мс | 45× | |
| Spanish | es | spacy | 104 | 1,841 мс | 6 мс | 307× | |
| French | fr | spacy | 133 | 2,327 мс | 8 мс | 291× | |
| Italian | it | spacy | 97 | 1,787 мс | 7 мс | 255× | |
| Portuguese | pt | spacy | 61 | 1,764 мс | 6 мс | 294× | |
| Dutch | nl | spacy | 122 | 2,486 мс | 6 мс | 414× | |
| Polish | pl | spacy | 70 | 1,726 мс | 8 мс | 216× | |
| Russian | ru | spacy | 41 | 2,226 мс | 6 мс | 371× | |
| Japanese | ja | spacy | 23 | 1,436 мс | 6 мс | 239× | |
| Chinese | zh | spacy | 24 | 2,554 мс | 7 мс | 365× | |
| Korean | ko | spacy | 16 | 1,305 мс | 6 мс | 218× | |
| Arabic | ar | transformer | 20 | 554 мс | 8 мс | 69× | |
| Hindi | hi | transformer | 22 | 486 мс | 7 мс | 69× | |
| Turkish | tr | spacy | 112 | 504 мс | 6 мс | 84× | |
| Romanian | ro | spacy | 122 | 1,730 мс | 6 мс | 288× | |
| Greek | el | spacy | 29 | 1,822 мс | 7 мс | 260× | |
| Croatian | hr | spacy | 67 | 989 мс | 7 мс | 141× | |
| Slovenian | sl | spacy | 64 | 1,264 мс | 7 мс | 181× | |
| Macedonian | mk | spacy | 24 | 1,259 мс | 7 мс | 180× | |
| Swedish | sv | spacy | 140 | 1,002 мс | 6 мс | 167× | |
| Danish | da | spacy | 107 | 1,910 мс | 7 мс | 273× | |
| Norwegian | nb | spacy | 109 | 1,606 мс | 7 мс | 229× | |
| Finnish | fi | spacy | 118 | 1,229 мс | 7 мс | 176× | |
| Icelandic | is | transformer | 73 | 559 мс | 8 мс | 70× | |
| Ukrainian | uk | spacy | 25 | 1,434 мс | 9 мс | 159× | |
| Lithuanian | lt | spacy | 86 | 1,601 мс | 7 мс | 229× | |
| Bulgarian | bg | stanza | 24 | 8,735 мс | 98 мс | 89× | |
| Serbian | sr | transformer | 24 | 519 мс | 8 мс | 65× | |
| Hungarian | hu | stanza | 82 | 8,141 мс | 39 мс | 209× | |
| Czech | cs | transformer | 81 | 562 мс | 8 мс | 70× | |
| Slovak | sk | transformer | 70 | 577 мс | 8 мс | 72× | |
| Latvian | lv | transformer | 83 | 526 мс | 8 мс | 66× | |
| Estonian | et | transformer | 79 | 531 мс | 8 мс | 66× | |
| Hebrew | he | stanza | 17 | 8,850 мс | 101 мс | 88× | |
| Persian | fa | transformer | 12 | 439 мс | 7 мс | 63× | |
| Vietnamese | vi | stanza | 74 | 11,282 мс | 99 мс | 114× | |
| Indonesian | id | transformer | 79 | 524 мс | 7 мс | 75× | |
| Thai | th | transformer | 20 | 521 мс | 5 мс | 104× | |
| Malay | ms | transformer | 87 | 510 мс | 7 мс | 73× | |
| Filipino | tl | transformer | 75 | 501 мс | 7 мс | 72× | |
| Bengali | bn | transformer | 18 | 455 мс | 7 мс | 65× | |
| Urdu | ur | transformer | 12 | 445 мс | 7 мс | 64× | |
| Afrikaans | af | stanza | 119 | 7,867 мс | 55 мс | 143× | |
| Swahili | sw | transformer | 68 | 526 мс | 7 мс | 75× | |
| Armenian | hy | stanza | 69 | 19,643 мс | 85 мс | 231× | |
| Catalan | ca | spacy | 100 | 3,267 мс | 7 мс | 467× | |
| Basque | eu | stanza | 82 | 783 мс | 40 мс | 20× |
Кроссбраузерная совместимость
5 критических страниц протестированы на 4 браузерных движках без ошибок консоли и горизонтального переполнения.
Chromium
5 из 5 страниц
Все пройденоFirefox
5 из 5 страниц
Все пройденоWebKit
5 из 5 страниц
Все пройденоMobile Chrome
5 из 5 страниц
Все пройденоТестирование безопасности
35 тестов35 специализированных тестов безопасности, охватывающих конечные точки API, заголовки, CORS, проверку входных данных, аутентификацию и ограничение скорости.
Основные конечные точки
8 tests8 тестов, проверяющих доступность конечной точки API и коды ответов
Заголовки безопасности
6 tests6 тестов для CSP, X-Frame-Options, HSTS и прочего
Политика CORS
5 tests5 тестов для обработки запросов с перекрестным источником
Проверка входных данных
6 tests6 тестов для XSS, SQL-инъекций и искаженных входных данных
Безопасность аутентификации
5 tests5 тестов для обхода аутентификации и безопасности сеанса
Ограничение скорости
5 tests5 тестов для обеспечения ограничения скорости API и заголовков Retry-After
Анализ использования токенов
Всего использовано токенов: 76822 теста потребления токенов, измеряющих экономическую эффективность операций, размеров текста, языков и операторов.
| Операция | Символы | Язык | Сущности | Оператор | Токены | Время ответа |
|---|---|---|---|---|---|---|
| analyze | 50 | en | 44 | N/A | 4 | 220 мс |
| analyze | 200 | en | 140 | N/A | 9 | 276 мс |
| analyze | 500 | en | 387 | N/A | 21 | 367 мс |
| analyze | 1,000 | en | 745 | N/A | 39 | 542 мс |
| analyze | 5,000 | en | 3776 | N/A | 193 | 4,398 мс |
| analyze | 10,000 | en | 7566 | N/A | 385 | 14,494 мс |
| anonymize | 160 | en | 113 | replace | 7 | 291 мс |
| anonymize | 160 | en | 113 | redact | 7 | 236 мс |
| anonymize | 160 | en | 113 | hash | 7 | 243 мс |
| anonymize | 160 | en | 113 | mask | 7 | 276 мс |
| anonymize | 160 | en | 113 | encrypt | 7 | 242 мс |
| analyze | 165 | de | 148 | N/A | 9 | 272 мс |
| analyze | 151 | fr | 133 | N/A | 9 | 282 мс |
| analyze | 75 | ja | 23 | N/A | 3 | 1,608 мс |
| analyze | 125 | ru | 41 | N/A | 4 | 2,588 мс |
| analyze | 113 | ar | 20 | N/A | 3 | 501 мс |
| analyze | 63 | zh | 24 | N/A | 3 | 2,591 мс |
| analyze | 160 | en | 106 | PERSON only | 7 | 258 мс |
| analyze | 160 | en | 108 | PERSON+EMAIL+PHONE | 8 | 266 мс |
| analyze | 160 | en | 113 | All entities | 8 | 264 мс |
| decrypt | 342 | en | 37 | decrypt | 2 | 188 мс |
| batch-analyze | 476 | en,de,fr | 394 | N/A | 26 | 5,278 мс |
Методология тестирования
Наш набор тестов объединяет тестирование Playwright на уровне GUI с прямой проверкой API для полного охвата.
Тестирование GUI
Автоматизация браузера Playwright тестирует реальные рабочие процессы пользователя — нажатие кнопок, заполнение форм, навигация между страницами и проверка визуальных результатов.
Тестирование API
Прямые HTTP-запросы проверяют каждую конечную точку с граничными случаями, искаженными входными данными и граничными условиями, которые одно только тестирование GUI не может охватить.
Кэширование сеанса
Аутентифицированные сеансы кэшируются и повторно используются на протяжении вех, что сокращает время выполнения тестов при сохранении реалистичного поведения пользователя.
Очистка CRUD
Каждая сущность, предустановка и ключ шифрования, созданные во время тестирования, очищаются после этого, обеспечивая идемпотентность тестов и повторяемость.