biloba-dom-method

Implement new DOM methods and Go bindings for Biloba's browser automation framework.

25|7|Updated Mar 3, 2023
One-click install
npx skills add https://github.com/onsi/biloba --skill biloba-dom-method
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: biloba-dom-method
Source: https://github.com/onsi/biloba/tree/main/.claude/skills/biloba-dom-method
Command: npx skills add https://github.com/onsi/biloba --skill biloba-dom-method

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

This skill provides a structured approach to adding DOM interaction primitives and their Go bindings in Biloba, enabling developers to extend browser automation capabilities safely.

Core Features & Use Cases

  • Define new DOM methods and matchers that operate on Biloba's browser context and map to JS primitives and Go wrappers.
  • Dual immediate/matcher API templates for synchronous and polling usage.
  • Guidance on tests, docs, and code organization to keep changes atomic and maintainable.

Quick Start

Implement a new DOM method in biloba.js and expose it via the Go wrapper, then add tests and docs.

Frequently Asked Questions about biloba-dom-method

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I add new DOM methods and matchers for browser testing in Go?

To add new DOM methods and matchers for browser testing, you implement JavaScript primitives in biloba.js and expose them via Go wrapper bindings. This structured approach supports both synchronous immediate actions and polling matchers for end-to-end tests.

What is the dual immediate and matcher API pattern in Biloba?

The dual immediate and matcher API pattern in Biloba provides templates for both synchronous execution and polling usage. Immediate APIs execute DOM actions like Click instantly, while matcher APIs like HaveProperty poll the browser context to verify element states during end-to-end testing.

Does Biloba support creating custom browser automation primitives with Go bindings?

Yes, Biloba supports creating custom browser automation primitives with Go bindings. Developers can define new DOM interaction methods that operate directly on the browser context, mapping JavaScript primitives to Go wrappers to extend automation capabilities safely within end-to-end tests.

How do I structure DOM interaction updates to keep browser tests maintainable?

To keep DOM interaction updates maintainable, structure changes atomically by updating biloba.js primitives, the Go wrapper, tests, and documentation together. Apply proper guards and follow the CLAUDE workflow to ensure code organization remains safe during end-to-end browser testing.

What are the limitations when extending Biloba with custom DOM actions?

Limitations when extending Biloba with custom DOM actions include the need to maintain atomicity across JavaScript primitives and Go wrapper bindings. Developers must implement proper guards and update tests and docs simultaneously to prevent breaking existing end-to-end browser test functionality.