@test-station/cli 0.2.28 → 0.2.30

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (2) hide show
  1. package/README.md +79 -0
  2. package/package.json +3 -3
package/README.md CHANGED
@@ -269,6 +269,85 @@ Typical prerequisite:
269
269
  yarn playwright install --with-deps
270
270
  ```
271
271
 
272
+ ### Live UI Performance Benchmarks
273
+
274
+ This repo also carries a manual Playwright benchmark suite for the deployed web interface. It is intended for live-data navigation checks and is not part of the default CI pass.
275
+
276
+ Typical usage:
277
+
278
+ ```sh
279
+ yarn playwright install --with-deps chromium
280
+ TEST_STATION_E2E_BASE_URL=https://test-station.smysnk.com yarn test:e2e:performance
281
+ ```
282
+
283
+ What it benchmarks:
284
+
285
+ - public home-page readiness with live project and run data
286
+ - sidebar project focus latency
287
+ - run-row navigation into `/runs/[id]`
288
+ - runner-report iframe readiness
289
+ - switching from runner report to operations view
290
+ - navigation from a run into the related project page
291
+
292
+ Artifacts:
293
+
294
+ - summary JSON at `artifacts/e2e-performance/latest.json`
295
+ - timestamped benchmark snapshots under `artifacts/e2e-performance/`
296
+ - Playwright JSON output at `artifacts/e2e-performance/playwright-results.json`
297
+
298
+ Each benchmark record now also carries a `profiling` block with:
299
+
300
+ - server-side page-load timings captured during `getServerSideProps`
301
+ - browser page-ready marks for overview, project, run, operations, and runner-frame milestones
302
+ - recent client-side route-transition events
303
+ - resource timings for `/graphql`, `/_next/data/`, and runner-report iframe requests
304
+
305
+ These profiling fields only appear once the target deployment is running a build that includes the instrumentation hooks from this repo.
306
+
307
+ Optional environment variables:
308
+
309
+ - `TEST_STATION_E2E_BASE_URL`: target deployment to benchmark
310
+ - `TEST_STATION_E2E_STORAGE_STATE`: optional Playwright storage-state file when the target requires authentication
311
+ - `TEST_STATION_E2E_OUTPUT_DIR`: override the benchmark artifact directory
312
+ - `TEST_STATION_E2E_BUDGET_HOME_READY_MS`
313
+ - `TEST_STATION_E2E_BUDGET_PROJECT_FOCUS_MS`
314
+ - `TEST_STATION_E2E_BUDGET_PROJECT_CLEAR_MS`
315
+ - `TEST_STATION_E2E_BUDGET_RUN_NAVIGATION_MS`
316
+ - `TEST_STATION_E2E_BUDGET_RUNNER_REPORT_READY_MS`
317
+ - `TEST_STATION_E2E_BUDGET_OPERATIONS_VIEW_SWITCH_MS`
318
+ - `TEST_STATION_E2E_BUDGET_PROJECT_PAGE_NAVIGATION_MS`
319
+
320
+ ### Live UI Interaction Regressions
321
+
322
+ This repo also carries a separate live-data interaction suite for the visible navigation surfaces. Unlike the benchmark suite, these tests do not fall back to direct route changes, so they fail when a click target stops navigating.
323
+
324
+ Typical usage:
325
+
326
+ ```sh
327
+ yarn playwright install --with-deps chromium
328
+ TEST_STATION_E2E_BASE_URL=https://test-station.smysnk.com yarn test:e2e:interactions
329
+ ```
330
+
331
+ What it checks:
332
+
333
+ - clicking a home-page run row opens the run detail page
334
+ - clicking a project execution-feed run link opens the run detail page
335
+ - clicking `Operations view` switches from the runner report to the operations template
336
+ - clicking the project link on a run detail page navigates back to the related project page
337
+
338
+ Artifacts:
339
+
340
+ - Playwright JSON output at `artifacts/e2e-interactions/playwright-results.json`
341
+ - traces and screenshots under `artifacts/e2e-interactions/test-results/`
342
+
343
+ Optional environment variables:
344
+
345
+ - `TEST_STATION_E2E_BASE_URL`: target deployment to exercise
346
+ - `TEST_STATION_E2E_STORAGE_STATE`: optional Playwright storage-state file when the target requires authentication
347
+ - `TEST_STATION_E2E_INTERACTIONS_OUTPUT_DIR`: override the interaction artifact directory
348
+
349
+ If the app redirects to `/auth/signin` and no storage state is provided, or if there are no public runs/projects visible, the benchmark suite skips rather than failing with misleading timing output.
350
+
272
351
  ### Publishing CI Runs To `/api/ingest`
273
352
 
274
353
  The deployed server accepts machine reports at `POST /api/ingest` with shared-key auth. The checked-in staging release workflow publishes the self-test report to `https://test-station.smysnk.com/api/ingest`.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@test-station/cli",
3
- "version": "0.2.28",
3
+ "version": "0.2.30",
4
4
  "publishConfig": {
5
5
  "access": "public"
6
6
  },
@@ -12,8 +12,8 @@
12
12
  ".": "./src/index.js"
13
13
  },
14
14
  "dependencies": {
15
- "@test-station/core": "0.2.28",
16
- "@test-station/render-html": "0.2.28"
15
+ "@test-station/core": "0.2.30",
16
+ "@test-station/render-html": "0.2.30"
17
17
  },
18
18
  "scripts": {
19
19
  "build": "node ../../scripts/check-package.mjs ./src/index.js && node --check ./src/cli.js",