7.9 KiB
Локальная проверка производительности UX/UI
Состояние на2026-10-04; этап12.3 продолжается. Эти измерения относятся к Playwright/Edge/Next dev без CPU throttling и реальной сети. readyMs — wall clock от page.goto до готовой строки, включая компиляцию/подставной API; разные прогоны имеют разную прогретость. Это не production SLA и не p95. Fixtures проверяют UI на реальном формате DTO, но не ёмкость PostgreSQL/RouterOS.
| Сценарий | Размер fixture | Строк в DOM до → после | DOM nodes до → после | Наблюдаемый dev ready до → после |
|---|---|---|---|---|
| Серверы | 1000 ServerRead,501462 JSON bytes | 1000 →50 | 41569 →2644 | 3345 →1058/1543ms |
| Статистика/CompactDataGrid | 1000 users,88894 JSON bytes массива | 1000 →50 | 12585 →1210 | 5195 →2928/1195ms |
| BGP | 1000 полных сессий | 1000 →50 | 25657 →1932 | 2990 →898ms |
| Очередь проблем | 1000 offline servers | 5 начальных,55 после раскрытия,105 после кнопки | 831 начальный dashboard | 1081ms; baseline до не замерялся |
Профили: large-servers.spec.ts, large-statistics.spec.ts, large-bgp.spec.ts, dashboard-data.spec.ts. Измерения приложены к Playwright test results как JSON. Полные массивы всё ещё загружаются/валидируются/фильтруются на клиенте. Pagination ограничивает строки DOM, но не число pivot колонок; широкая pivot требует отдельной проверки. Порционное раскрытие очереди допускает постепенный полный список по запросу пользователя.
Оставшиеся специализированные grids
Ниже точный поиск manualPagination:true, а не заключение о дефекте: часть экранов может уже ограничивать данные API. Перед сменой режима нужно проверить читателя, общий recordCount, порядок/drag и выбор из URL. Требуемые сценарии:1000 строк, последняя страница, поиск/сортировка всего среза, обновление на второй странице, уменьшение набора, детали/URL/права,320px. Firewall нельзя слепо разбивать с потерей порядка правил; traffic требует согласовать page/limit с backend.
| Файл | Следующая проверка |
|---|---|
| backups-data-grid.tsx | Потребитель API, контекст/детали и fixture1000 |
| certificates-data-grid.tsx | Потребитель API, контекст/детали и fixture1000 |
| communities-data-grid.tsx | Потребитель API, контекст/детали и fixture1000 |
| data-collection-scheduler-data-grid.tsx | Потребитель API, контекст/детали и fixture1000 |
| filters-data-grid.tsx | Порядок/drag и операции до ограничения DOM |
| firewall-rules-data-grid.tsx | Порядок/drag и операции до ограничения DOM |
| firewall-scenario-rules-data-grid.tsx | Порядок/drag и операции до ограничения DOM |
| gre-pools-data-grid.tsx | Потребитель API, контекст/детали и fixture1000 |
| gre-tunnels-data-grid.tsx | Потребитель API, контекст/детали и fixture1000 |
| ospf-bfd-data-grid.tsx | Потребитель API, контекст/детали и fixture1000 |
| ospf-neighbors-data-grid.tsx | Потребитель API, контекст/детали и fixture1000 |
| ospf-routes-data-grid.tsx | Потребитель API, контекст/детали и fixture1000 |
| probes-schedule-data-grid.tsx | Потребитель API, контекст/детали и fixture1000 |
| probes-speed-probes-data-grid.tsx | Потребитель API, контекст/детали и fixture1000 |
| recursive-routes-data-grid.tsx | Потребитель API, контекст/детали и fixture1000 |
| route-optimizer-comm-recs-data-grid.tsx | Потребитель API, контекст/детали и fixture1000 |
| route-optimizer-full-routes-data-grid.tsx | Потребитель API, контекст/детали и fixture1000 |
| route-optimizer-ospf-preview-data-grid.tsx | Потребитель API, контекст/детали и fixture1000 |
| route-optimizer-wan-matrix-data-grid.tsx | Потребитель API, контекст/детали и fixture1000 |
| subusers-data-grid.tsx | Потребитель API, контекст/детали и fixture1000 |
| traffic-flows-data-grid.tsx | API page/limit, manualSorting и общий счётчик |
| uptime-resources-data-grid.tsx | Потребитель API, контекст/детали и fixture1000 |
| uptime-speed-history-data-grid.tsx | Потребитель API, контекст/детали и fixture1000 |
| users-data-grid.tsx | Потребитель API, контекст/детали и fixture1000 |
| vxlan-data-grid.tsx | Потребитель API, контекст/детали и fixture1000 |
| wireguard-data-grid.tsx | Потребитель API, контекст/детали и fixture1000 |
| wireguard-peers-grid.tsx | Потребитель API, контекст/детали и fixture1000 |
Всего27 специализированных grids; ни один из этого перечня не принят этим документом на больших данных. CompactDataGrid дополнительно проверен на повторном получении100 active probes: страница сохраняется; сокращение100→1 ограничивает индекс. Следующая группа12.3.6 — uptime-resources/probes-speed/probes-schedule, затем сетевые/admin grids по профилям. Общий журнал: ux-ui-progress.md.