14 KiB
14 KiB
type, work_item_id, title, version, status, created_at, updated_at, authors
| type | work_item_id | title | version | status | created_at | updated_at | authors | |
|---|---|---|---|---|---|---|---|---|
| ui-test-cases | ET-008 | UI Test Cases: GPS-треки с публичных платформ | 1 | draft | 2026-06-01 | 2026-06-01 |
|
UI Test Cases — ET-008: GPS-треки с публичных платформ
Базовый URL: https://openclaw.mva154.duckdns.org/enduro/
Все тесты проверяют появление и поведение секции «Источники» в
#sheet-gpx, импорта по URL и поиска OSM-треков. Внешние сетевые
запросы в test-окружении мокаются (см. test-plan).
Селекторы (новые, добавляются ET-008):
#source-seg— segmented control «Источники»#source-btn-file,#source-btn-url,#source-btn-nearby— кнопки вкладок#gpx-source-pane-file,#gpx-source-pane-url,#gpx-source-pane-nearby— контент-блоки#gpx-url-input— поле ввода URL#btn-gpx-fetch-url— кнопка «Загрузить» URL#btn-gpx-find-nearby— кнопка «Найти треки в этой области»#gpx-nearby-results— контейнер списка найденных.gpx-nearby-card— карточка найденного OSM-трека.gnc-import— кнопка «Показать».gnc-external— ссылка «↗».gpx-source-row— индикатор источника в карточке трека
Существующие селекторы (ET-006): #tb-gpx, #sheet-gpx, #gpx-list.
TC-UI-01 — Секция «Источники» видна в #sheet-gpx
- тип: ui
- viewport: desktop
шаги:
- navigate: https://openclaw.mva154.duckdns.org/enduro/
- wait: 5000
- click: "#tb-gpx"
- wait: 1000
- screenshot: "01-sheet-gpx-sources-section"
- check-visual: "В верхней части #sheet-gpx (под заголовком, над списком треков) видна секция «ИСТОЧНИКИ» с тремя кнопками segmented control: «Из файла», «По ссылке», «Найти рядом». По умолчанию активна (подсвечена оранжевым) кнопка «Из файла»."
TC-UI-02 — Переключение на вкладку «По ссылке»
- тип: ui
- viewport: desktop
шаги:
- navigate: https://openclaw.mva154.duckdns.org/enduro/
- wait: 5000
- click: "#tb-gpx"
- wait: 1000
- click: "#source-btn-url"
- wait: 500
- screenshot: "02-source-url-pane"
- check-visual: "Кнопка «По ссылке» подсвечена оранжевым, «Из файла» и «Найти рядом» — нет. Под кнопками видно поле ввода с placeholder «https://example.com/track.gpx» и кнопка «Загрузить» справа."
TC-UI-03 — Переключение на вкладку «Найти рядом»
- тип: ui
- viewport: desktop
шаги:
- navigate: https://openclaw.mva154.duckdns.org/enduro/
- wait: 5000
- click: "#tb-gpx"
- wait: 1000
- click: "#source-btn-nearby"
- wait: 500
- screenshot: "03-source-nearby-pane"
- check-visual: "Кнопка «Найти рядом» подсвечена оранжевым. Под кнопками видна крупная кнопка «Найти треки в этой области карты». Список найденных треков пуст или отсутствует."
TC-UI-04 — Поле URL принимает ввод
- тип: ui
- viewport: desktop
шаги:
- navigate: https://openclaw.mva154.duckdns.org/enduro/
- wait: 5000
- click: "#tb-gpx"
- wait: 1000
- click: "#source-btn-url"
- wait: 500
- click: "#gpx-url-input"
- wait: 200
- screenshot: "04-url-input-focused"
- check-visual: "Поле #gpx-url-input получило фокус (видна рамка/каретка), placeholder виден если поле пустое. Кнопка «Загрузить» рядом, активна (не дизейблена)."
TC-UI-05 — Невалидный URL: toast об ошибке
- тип: ui
- viewport: desktop
шаги:
- navigate: https://openclaw.mva154.duckdns.org/enduro/
- wait: 5000
- click: "#tb-gpx"
- wait: 1000
- click: "#source-btn-url"
- wait: 500
- click: "#gpx-url-input"
- wait: 200
- type: "not-a-url"
- click: "#btn-gpx-fetch-url"
- wait: 1000
- screenshot: "05-invalid-url-toast"
- check-visual: "Сверху по центру экрана отображается toast-уведомление с текстом «Невалидная ссылка» (или похожим). Никаких изменений на карте."
TC-UI-06 — Кнопка «Найти треки» дизейблится во время запроса
- тип: ui
- viewport: desktop
шаги:
- navigate: https://openclaw.mva154.duckdns.org/enduro/
- wait: 5000
- click: "#tb-gpx"
- wait: 1000
- click: "#source-btn-nearby"
- wait: 500
- click: "#btn-gpx-find-nearby"
- wait: 300
- screenshot: "06-finding-tracks-loading"
- check-visual: "Кнопка «Найти треки в этой области карты» визуально дизейблена (серая / opacity снижен). Виден индикатор загрузки (spinner или moto-wheel)."
TC-UI-07 — Список найденных треков
- тип: ui
- viewport: desktop
шаги:
- navigate: https://openclaw.mva154.duckdns.org/enduro/
- wait: 5000
- click: "#tb-gpx"
- wait: 1000
- click: "#source-btn-nearby"
- wait: 500
- click: "#btn-gpx-find-nearby"
- wait: 4000
- screenshot: "07-nearby-tracks-list"
- check-visual: "Под кнопкой поиска появился список карточек .gpx-nearby-card. Каждая карточка содержит: иконку 🌍 (или OSM-логотип) слева, имя/описание трека и метаданные (км, аноним/автор), кнопку «Показать» справа, маленькую ссылку «↗». Карточки разделены тонкими линиями."
TC-UI-08 — Импорт OSM-трека: трек на карте, индикатор в карточке
- тип: ui
- viewport: desktop
шаги:
- navigate: https://openclaw.mva154.duckdns.org/enduro/
- wait: 5000
- click: "#tb-gpx"
- wait: 1000
- click: "#source-btn-nearby"
- wait: 500
- click: "#btn-gpx-find-nearby"
- wait: 4000
- click: ".gnc-import"
- wait: 4000
- screenshot: "08-osm-track-imported"
- check-visual: "На карте видна цветная линия импортированного трека. В списке найденных карточка первого трека показывает индикатор «✓ Загружен» вместо кнопки «Показать». В нижней части #sheet-gpx (в #gpx-list) появилась новая карточка трека с источником «🌍 OSM #...»."
TC-UI-09 — Источник «OSM» — кликабельная ссылка в #gpx-list
- тип: ui
- viewport: desktop
шаги:
- navigate: https://openclaw.mva154.duckdns.org/enduro/
- wait: 5000
- click: "#tb-gpx"
- wait: 1000
- click: "#source-btn-nearby"
- wait: 500
- click: "#btn-gpx-find-nearby"
- wait: 4000
- click: ".gnc-import"
- wait: 4000
- screenshot: "09-gpx-list-source-osm"
- check-visual: "В нижнем списке #gpx-list карточка импортированного трека под именем содержит строку «.gpx-source-row» с текстом «🌍 OSM #<число>». Текст оформлен как ссылка (подчёркнут или другой цвет)."
TC-UI-10 — Смешанные источники в #gpx-list
- тип: ui
- viewport: desktop
шаги:
- navigate: https://openclaw.mva154.duckdns.org/enduro/
- wait: 5000
- click: "#tb-gpx"
- wait: 1000
- click: "#source-btn-url"
- wait: 500
- click: "#gpx-url-input"
- wait: 200
- type: "https://example.test/mock-track.gpx"
- click: "#btn-gpx-fetch-url"
- wait: 4000
- click: "#source-btn-nearby"
- wait: 500
- click: "#btn-gpx-find-nearby"
- wait: 4000
- click: ".gnc-import"
- wait: 4000
- screenshot: "10-mixed-sources-list"
- check-visual: "В #gpx-list 2 карточки: одна с источником «🔗 example.test», вторая с «🌍 OSM #...». Карточки имеют разные цветовые индикаторы слева. Обе видны на карте как линии разных цветов."
TC-UI-11 — Импорт по URL: трек появляется на карте
- тип: ui
- viewport: desktop
шаги:
- navigate: https://openclaw.mva154.duckdns.org/enduro/
- wait: 5000
- click: "#tb-gpx"
- wait: 1000
- click: "#source-btn-url"
- wait: 500
- click: "#gpx-url-input"
- wait: 200
- type: "https://example.test/mock-track.gpx"
- click: "#btn-gpx-fetch-url"
- wait: 5000
- screenshot: "11-url-track-loaded"
- check-visual: "На карте видна цветная линия загруженного трека. В #gpx-list появилась карточка с именем «mock-track» и источником «🔗 example.test». Карта выполнила fit bounds — трек по центру экрана."
TC-UI-12 — Секция «Источники» на мобильном
- тип: ui
- viewport: mobile
шаги:
- navigate: https://openclaw.mva154.duckdns.org/enduro/
- wait: 5000
- click: "#tb-gpx"
- wait: 1000
- screenshot: "12-sources-mobile-default"
- check-visual: "На мобильном viewport секция «Источники» помещается по ширине экрана. Три кнопки segmented control видны и нажимаемы, не выходят за экран. Активна «Из файла»."
TC-UI-13 — Поле URL на мобильном
- тип: ui
- viewport: mobile
шаги:
- navigate: https://openclaw.mva154.duckdns.org/enduro/
- wait: 5000
- click: "#tb-gpx"
- wait: 1000
- click: "#source-btn-url"
- wait: 500
- screenshot: "13-url-pane-mobile"
- check-visual: "На мобильном поле #gpx-url-input занимает большую часть ширины, кнопка «Загрузить» справа. Оба элемента не перекрываются, нажимаемы, помещаются в экран."
TC-UI-14 — Список найденных OSM треков на мобильном
- тип: ui
- viewport: mobile
шаги:
- navigate: https://openclaw.mva154.duckdns.org/enduro/
- wait: 5000
- click: "#tb-gpx"
- wait: 1000
- click: "#source-btn-nearby"
- wait: 500
- click: "#btn-gpx-find-nearby"
- wait: 4000
- screenshot: "14-nearby-list-mobile"
- check-visual: "На мобильном карточки .gpx-nearby-card отображаются вертикально, занимают всю ширину. Кнопка «Показать» и ссылка «↗» в каждой карточке нажимаемы, не перекрываются. Список скроллится."
TC-UI-15 — Совместимость со спутниковой подложкой
- тип: ui
- viewport: desktop
шаги:
- navigate: https://openclaw.mva154.duckdns.org/enduro/
- wait: 5000
- click: "#terrain-toggle"
- wait: 500
- click: "#base-btn-satellite"
- wait: 5000
- click: "#tb-gpx"
- wait: 1000
- click: "#source-btn-nearby"
- wait: 500
- click: "#btn-gpx-find-nearby"
- wait: 4000
- click: ".gnc-import"
- wait: 4000
- screenshot: "15-osm-track-on-satellite"
- check-visual: "На спутниковой подложке видна цветная линия импортированного OSM-трека. Линия имеет hover-видимость (контрастная для спутника). Панель #sheet-gpx не конфликтует со спутником визуально."
TC-UI-16 — Сохранение треков при переключении тёмной темы
- тип: ui
- viewport: desktop
шаги:
- navigate: https://openclaw.mva154.duckdns.org/enduro/
- wait: 5000
- click: "#tb-gpx"
- wait: 1000
- click: "#source-btn-nearby"
- wait: 500
- click: "#btn-gpx-find-nearby"
- wait: 4000
- click: ".gnc-import"
- wait: 4000
- click: "#btn-theme"
- wait: 3000
- screenshot: "16-osm-track-after-theme-switch"
- check-visual: "После переключения тёмной темы цветная линия импортированного OSM-трека остаётся на карте. В #gpx-list карточка трека с источником «🌍 OSM #...» сохранилась."
TC-UI-17 — Сохранение треков при переключении источника «Из файла»
- тип: ui
- viewport: desktop
шаги:
- navigate: https://openclaw.mva154.duckdns.org/enduro/
- wait: 5000
- click: "#tb-gpx"
- wait: 1000
- click: "#source-btn-nearby"
- wait: 500
- click: "#btn-gpx-find-nearby"
- wait: 4000
- click: ".gnc-import"
- wait: 4000
- click: "#source-btn-file"
- wait: 500
- screenshot: "17-back-to-file-tab"
- check-visual: "Активна вкладка «Из файла», секция «Найти рядом» свернута. Импортированный OSM-трек остаётся в нижнем списке #gpx-list (карточка с «🌍 OSM #...»). Сам трек по-прежнему видим на карте."
TC-UI-18 — Внешняя ссылка ↗ на osm.org
- тип: ui
- viewport: desktop
шаги:
- navigate: https://openclaw.mva154.duckdns.org/enduro/
- wait: 5000
- click: "#tb-gpx"
- wait: 1000
- click: "#source-btn-nearby"
- wait: 500
- click: "#btn-gpx-find-nearby"
- wait: 4000
- screenshot: "18-external-link-button"
- check-visual: "В каждой карточке .gpx-nearby-card в правом углу видна кнопка «↗» (.gnc-external). Кнопка имеет hover-состояние (cursor:pointer), визуально отличима от основной кнопки «Показать»."