🧪 Test Hub
testing: Demo target v3.0.0 · built-in demo site

DEMO-009 shared library

Edit Load test Duplicate

DEMO-009__shared_library.py

Runs
3
Pass rate
100%
3 passed / 0 failed
Avg duration
1s
p95 2s
Estimate
1s
avg of last 10 judged runs
Flakiness
0.00
0 stable · 1 alternates
Current streak
3
passed

Last 3 results newest on the right — click a square to open that run

Duration per run point color = outcome; dashed = 7-run average; click a point to open the run

Step timing trends the same step compared across the last 3 runs — slowest steps first, one line each

How long it takes distribution of 3 runs — two humps mean two different behaviours hiding behind one average

fastest 1s · slowest 2s

Why this test failed grouped by message, last 90 days

No failures recorded. 👍

Outcomes by target version

What this test does plain language, derived from the code

  1. demo = DemoPage(page, ctx).open()
  2. assert demo.title(), "page has no title"
  3. ⏱ Timed phase: submit via page object
  4. demo.submit_request("Grace Hopper", "grace@example.gov", "high")
  5. body = demo.result_text()
  6. ctx.log(f"result: {body!r}")
  7. assert "Grace Hopper" in body, "submitted name not in the result"
  8. Take a screenshot (“done”)
Show the code
"""A test built the way a real code base is: page objects in a shared
package, the test itself just intent + assertions.

The class lives in _lib/pages.py — the syncer ignores anything starting
with "_", and the harness puts the tests folder on sys.path, so a whole
team library (page objects, data builders, custom waits) drops in beside
the tests and travels with them. The only contract the hub asks of THIS
file is run(page, ctx). See CONNECT-YOUR-TESTS.md for the full recipe.
"""
from _lib.pages import DemoPage


def run(page, ctx):
    demo = DemoPage(page, ctx).open()
    assert demo.title(), "page has no title"

    with ctx.timed("submit via page object"):
        demo.submit_request("Grace Hopper", "grace@example.gov", "high")

    body = demo.result_text()
    ctx.log(f"result: {body!r}")
    assert "Grace Hopper" in body, "submitted name not in the result"
    ctx.screenshot("done")

All runs

RunStatusQueuedDuration VersionTriggerBatch
#458 passed 2026-09-25 00:25:05 1s 3.0.0 cli-adopted 8 tests (terminal)
#450 passed 2026-09-25 00:24:35 1s 3.0.0 cli-adopted 8 tests (terminal)
#442 passed 2026-09-25 00:24:06 2s 3.0.0 cli-adopted 8 tests (terminal)