om-integration-tests

Generate and run integration tests by exploring the live application through a configured browser provider.

2.6k|159|Updated Mar 8, 2021
One-click install
npx skills add https://github.com/go-musicfox/go-musicfox --skill om-integration-tests-go-musicfox
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: om-integration-tests
Source: https://github.com/go-musicfox/go-musicfox/tree/main/.agents/skills/om-integration-tests
Command: npx skills add https://github.com/go-musicfox/go-musicfox --skill om-integration-tests-go-musicfox

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill includes references (resource) components.

What problem does it solve? Writing integration and end-to-end tests usually means guessing selectors, hardcoding URLs, and booting duplicate test environments, which produces brittle tests and slow runs. This Skill explores the running application first, reuses a shared test environment, and reports failures with per-test artifact-based diagnosis. ## Core Features & Use Cases - Exploration-driven test authoring: Drives the configured browser provider (open, snapshot, interact, assert) against the live app so tests use only observed roles, labels, and text — never guessed CSS selectors. - Shared test environment reuse: Attaches to the validated test-env.json descriptor written by om-prepare-test-env (PID check, readiness probe, freshness TTL) instead of booting a second instance, with credentials referenced via environment variables rather than hardcoded values. - Artifact-based failure analysis: Classifies every failure as product regression, test issue, or environment issue using screenshots, traces, and error context, and reports a per-test table with suggested owner and next action. - Use Case: After implementing a company-creation flow, ask the agent to write integration tests; it attaches to the running shared environment, walks the flow in the browser, authors a Playwright or agent-browser test following the repo's conventions, verifies it passes, and cleans up its fixtures. ## Quick Start Ask the agent to create and run integration tests for the login flow using the om-integration-tests skill against the shared test environment.

Frequently Asked Questions about om-integration-tests

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

FAQPage Schema
How do I write integration tests without guessing CSS selectors?

Explore the running application first with the configured browser provider's snapshot and interact operations to capture actual roles, labels, and text. Then author tests using only those observed elements, such as Playwright's getByRole, getByLabel, and getByText locators.

How to run existing Playwright or Cypress test suites with this workflow?

Use running-only mode: attach to the shared test environment, skip the authoring steps, and execute the repo's own runner command from package.json, Makefile, or CI. Any failure triggers the mandatory per-test artifact analysis and report.

Can integration tests share one test environment across runs?

Yes. The skill reads the test-env.json descriptor written by om-prepare-test-env and attaches after validating the owning PID, a readiness probe, and freshness TTL. Only when the descriptor is missing or stale does it provision a new environment.

How are test credentials handled without exposing secrets?

Credentials in the descriptor are references, not values: each entry names a passwordEnv variable inside a gitignored credentials file that the shell sources. Tests and commands use the variable literally, so password values never enter model context, reports, or test files.

Why do integration tests fail and how is each failure diagnosed?

Every failed run triggers inspection of runner output, screenshots, traces, and error context per test. Each failure is classified as a product regression, a test-code issue, or an environment problem, with a suggested owner and concrete next action in a report table.

What happens when a repository has no integration test setup?

The skill proposes a minimal executable setup for the configured browser provider and asks before scaffolding. For agent-browser it creates paired POSIX sh and native PowerShell launchers; for Playwright it uses a minimal shared TypeScript config.