Skip to content

Browser testing skills: TestBox BrowserSpec and ColdBox BrowserTestCase - #16

Merged
lmajano merged 3 commits into
mainfrom
claude/bx-playwright-research-plan-ddfqpm
Oct 1, 2026
Merged

lmajano merged 3 commits into
mainfrom
claude/bx-playwright-research-plan-ddfqpm

Conversation

@lmajano

@lmajano lmajano commented Oct 1, 2026

Copy link
Copy Markdown
Member

Summary

Adds browser testing skills for TestBox BrowserSpec and ColdBox BrowserTestCase (BoxLang + bx-playwright). 13 files:

New skills

  • testbox/browser-testing/SKILL.md: BrowserSpec (BoxLang only, skips elsewhere), installing bx-playwright and Chromium, browserProfile/baseURL annotations, browse() with isolated pages, this.playwright(), browserAvailable(), the 9 browser matchers, automatic screenshot/trace/video attachments, attach(), retries, --failed, --web-server, CI and debugging.
  • coldbox/testing-browser/SKILL.md: BrowserTestCase vs BaseTestCase, routeURL()/visitRoute()/assertRouteIs(), test-only loginAs()/logout() via the BrowserTesting module and its security model, running the app server and CI.

Pointers in existing skills

  • testbox/runners (--retries, --failed, --web-server*), testbox/reporters (attachments and attempts), testbox/bdd and testbox/unit (retries, attach()), testbox/expectations (browser matchers), coldbox/testing-base-classes (BrowserTestCase).

Catalog and manifests

  • README.md rows for both new skills.
  • .claude-plugin/marketplace.json, .claude-plugin/plugin.json, .cursor-plugin/plugin.json, .grok-plugin/plugin.json bumped 1.0.0 to 1.1.0.

Dependencies

Matches the merged ortus-boxlang/skills#11.

Validation

  • All four JSON manifests parse with python3 -m json.tool.
  • README links to both new SKILL.md files resolve.
  • No em dash characters in added lines.

🤖 Generated with Claude Code

https://claude.ai/code/session_018xQZ2gYtfrpUne3esucPND


Generated by Claude Code

claude and others added 3 commits October 1, 2026 14:28
…rTestCase

New skills:
- testbox/browser-testing: BrowserSpec (BoxLang only, skips elsewhere),
  installing bx-playwright and Chromium, browserProfile/baseURL
  annotations, browse() with one isolated page per argument,
  this.playwright(), browserAvailable(), the 9 browser matchers and their
  not forms, automatic screenshot/trace/video attachments, attach(),
  retries (spec, bundle, xUnit method, global), --failed, --web-server,
  CI and debugging with bxPlaywright show-trace.
- coldbox/testing-browser: BrowserTestCase vs BaseTestCase, a full spec,
  routeURL/visitRoute/assertRouteIs (params, name@module, module:name),
  loginAs/logout with moduleSettings.browserTesting and its security
  model (testing environment only, token in X-Browser-Testing-Token
  compared in constant time, GET only, 404 otherwise), running the app
  server and CI.

Pointers added to testbox runners (--retries, --failed, --web-server*),
reporters (attachments and attempts), bdd and unit (retries, attach()),
expectations (browser matchers) and coldbox testing-base-classes
(BrowserTestCase). README catalog updated; plugin manifests bumped to
1.1.0.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01UU9aLossoYUkQNwubnitBi
@lmajano
lmajano merged commit 6da4d4f into main Oct 1, 2026
1 check passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants