mirror of
https://github.com/openobserve/openobserve.git
synced 2026-11-06 00:09:22 +00:00
## Summary - Adds 21 Playwright E2E tests for the Service Catalog tab (`/web/traces?tab=services-catalog`) - New page object at `tests/ui-testing/pages/tracesPages/servicesCatalogPage.js` with verified `data-test` selectors - Registers `ServicesCatalogPage` in PageManager ## Test Coverage (21 tests) | Category | Tests | |----------|-------| | Smoke | 5 — page load, default sort, search filter, clear filter regression (#11689), row click/side panel | | Pagination | 5 — default 25/page, 10/page, page nav, prev/next, last page | | Column Sorting | 5 — Status, Requests, Error Rate, Service Name, P95 Duration | | Status Pills | 3 — pill counts, visibility, non-negative values | | Edge Cases | 3 — rapid typing stability, key services exist, console errors | ## Key Design Decisions - **Parallel mode** — avoids serial session degradation - **Isolated test stream** (`e2e-service-catalog`) — `stream-name` header on ingestion prevents false positives from default stream data - **No shared library modifications** — ingestion uses `getAuthHeaders()` directly in `beforeAll` to add the `stream-name` header without changing `service-graph-ingestion.js` - **No `force: true`** — portal interference handled via Escape key after dropdown selection - **Zero raw selectors in spec** — all selectors live in the page object per framework conventions ## Test Plan - [x] All 21 tests pass locally against dev environment - [ ] CI passes with `npx playwright test playwright-tests/Traces/service-catalog.spec.js --config playwright.config.js` 🤖 Generated with [Claude Code](https://claude.com/claude-code) --------- Co-authored-by: Claude Opus 4.7 <noreply@anthropic.com>