juanmarchetto/agent-skills/e2e-pipeline
- community
Checking that the SKILL.md file is still in the repository.
Generate and run E2E tests for mobile and web apps. Discovers screens, states, and flows via static analysis, generates Maestro test flows with assertions, executes them, and reports pass/fail results. Use when: run e2e, test flows, e2e tests, generate tests, automated testing.
Install
npx vskill@latest install juanmarchetto/agent-skills/e2e-pipelineSKILL.md
E2E Pipeline
Generate and run comprehensive E2E tests from static analysis of your codebase. Discovers all screens, states, and flows, generates Maestro test flows with real assertions, and reports results.
How This Differs From demo-pipeline
demo-pipeline produces marketing assets (video recordings, screenshots, animated demos). e2e-pipeline produces test results (pass/fail verdicts, regression detection, coverage reports). Same discovery phase, completely different output: demo-pipeline asks "does it look good?" while e2e-pipeline asks "does it work correctly?"
Workflow
Pipeline: DISCOVER > DETECT > GENERATE > EXECUTE > REPORT
Phase 0: DISCOVER — Flow & State Analysis
Analyze the codebase to map all screens, states, flows, and native dependencies.
Step 1: Discover screens Read the file-based routing structure:
Step 2: Identify states per screen Search for UI conditionals:
Step 3: Map navigation flows
Step 4: Identify native dependencies
Step 5: Present flow map Present the discovered map and ask:
"I discovered N screens with M states and K flows. Which flows do you want to test? (default: all)"
Phase 1: DETECT — Project Type & State
Detect project type (Expo/React Native/web) and check running state (device/emulator/server).
Phase 2: GENERATE — Create Test Flows
For each selected flow, generate a Maestro test YAML with assertions.
Assertion Reference:
| Assertion | Maestro equivalent | Use when | |
|---|---|---|---|
assert_visible: "Text" | - assertVisible: "Text" | Verify element appears on screen | |
assert_visible: { id: "elem" } | - assertVisible: { id: "elem" } | Verify element by testID | |
assert_not_visible: "Text" | - assertNotVisible: "Text" | Verify element is gone | |
assert_contains: { id: "elem", text: "val" } | - assertVisible: { id: "elem", text: "val" } | Verify element has specific text | |
assert_enabled: { id: "elem" } | - assertVisible: { id: "elem", enabled: true } | Verify element is interactive | |
assert_count: { text: "Item", count: 5 } | - assertVisible: "Item" + repeat logic | Verify expected number of elements | |
assert_text_contains: { id: "elem", text: "partial" } | - assertVisible: { id: "elem", containsText: "partial" } | Verify partial text match | |
screenshot_on_fail: true | Maestro auto-captures | Capture state on failure |
Test YAML format:
Present for approval:
"I generated N test flows covering M screens. Review and approve, or select which to run."
HARD GATE: Do NOT execute until user approves.
Phase 3: EXECUTE — Run Tests
Step 1: Generate Maestro test files in ./maestro/tests/:
Step 2: Run all tests:
Or run individually:
Step 3: Capture failure screenshots:
Phase 4: REPORT — Results
Generate ./docs/test-report.md and present summary.
Example Output
Error Handling
- If Maestro is not installed: provide install command (
curl -Ls "https://get.maestro.mobile.dev" | bash) - If no emulator/device detected: prompt user to start one and provide platform-specific instructions
- If app is not running: attempt to start it, or ask user to launch manually
- If test times out: capture screenshot, report which assertion failed, suggest increasing timeout
- If all tests fail: likely environment issue — check device connection, app state, and API availability
- If flow discovery finds 0 screens: ask user to specify the source directory
Structure
Security
- Security scanPassed, 95 of 100Pattern checks on the skill's files.
- Model reviewPassed
Quality evaluation
- Task evaluationNot runNo evaluation yet. Run one in Skill Studio.
Source
- SKILL.md in the repositoryCheckingskills/e2e-pipeline/SKILL.md
Popularity
- Repository stars
- 5
- Repository forks
- 1
- 7-day trend score
- 9
Stars and forks are for the whole GitHub repository, not this skill alone. Not refreshed yet.
Works with
Any agent vskill installs to: 56 targets in all. These 39 have a page on this site.
- Claude Code
- Cursor
- GitHub Copilot
- Windsurf
- Codex
- Gemini CLI
- Cline
- Amp
- Roo Code
- Goose
- Continue
- Kilo Code
- Junie
- Trae
- OpenHands
- Qwen Code
- AI Agent
- Tabnine Chat
- Sourcegraph Cody
- Amazon Q
- Firebase Genkit
- Sweep
- Devin
- Phind
- Mentat
- Claude Desktop
- Aider
- GPT Pilot
- Plandex
- bolt.new
- v0
- Replit Agent
- Anse
- TypingMind
- BetterChatGPT
- LibreChat
- Warp AI
- Pieces
- Fig AI
Embed badge
[](https://verified-skill.com/skills/juanmarchetto/agent-skills/e2e-pipeline)