mcpField
B
browser-test

browser-test

github.com/ruvnetTesting & quality80.0k755 installsUpdated today
Repository

About browser-test

browser-test is a skill for automated UI testing in a real browser, with recorded sessions that can be replayed and compared with a baseline. It supports frontend verification, regression checks, and re-running stored sessions after CI failures.

Key features

  1. 01Record replayable browser sessions
  2. 02Drive browser interactions
  3. 03Validate page content and state
  4. 04Capture screenshots and accessibility trees
  5. 05Compare runs with a baseline
  6. 06Store findings and session artifacts

Use cases

  1. 01Verify UI flows after frontend changes
  2. 02Compare a run with a visual baseline
  3. 03Replay a stored test after a CI failure

Install

Copy the command and run it in a terminal.

$npx skills add https://github.com/ruvnet/ruflo --skill browser-test

After installing, type/browser-testin Claude Code to confirm it loaded.

Details

From the project README

Browser Test

Automated UI testing. Now backed by a recorded RVF session container instead of an ephemeral run, so every test produces a replayable artifact.

When to use

  • Verifying UI functionality, user flows, or that frontend changes work in a real browser.
  • Producing a baseline session that future regressions can diff against.
  • Re-running a stored test session when CI fails (no need to re-author the test).

Steps

  1. Record the test run by composing browser-record:
    • Allocates an RVF container with --kind browser-session.
    • Begins a ruvector trajectory.
  2. Drive interactions — browser_open, browser_click, browser_fill, browser_type, browser_select. Each action emits a trajectory-step.
  3. Wait for elements / network idle via browser_wait before assertions.
  4. Validate with browser_get-text / browser_get-value / browser_get-title / browser_get-url. Validation outcomes go into findings.md inside the RVF container.
  5. Screenshot before / after key interactions for visual regression. Filenames follow <step-id>.png.
  6. Snapshot the accessibility tree at navigation boundaries.
  7. End the session: trajectory-end --verdict pass|fail, rvf compact, AgentDB index in browser-sessions.
  8. (Optional) Diff against --against <prior-session-id>: invoke browser-screenshot-diff to compare the new run with a baseline.

Navigation

  • browser_back / browser_forward for history navigation
  • browser_reload to refresh the page
  • browser_scroll to scroll to elements or coordinates

What changed from v0.1.0

  • The skill no longer ends with browser_close alone — it ends with the session-end protocol.
  • Selectors discovered during the test land in browser-selectors (host:intent), so the next test can find them by embedding similarity.
  • Validation outputs pass aidefence_is_safe before any LLM-facing summary; injection-flagged content is quarantined to findings.md.
  • The same skill, used in CI, now produces an artifact that /ruflo-browser replay can re-drive.

Tips

  • Use browser_wait before assertions to handle async rendering.
  • For visual regression, save the parent session id and pass --against <id> on the next run.
  • Use browser_eval for custom JavaScript assertions — but redact any returned strings via the aidefence_is_safe gate before logging.

Comments

Markdown supported