cli-e2e-test-authoring

Solid

Guide for adding new end-to-end tests for the Packmind CLI. This skill should be used when creating new test specs in the `apps/cli-e2e-tests/` directory that exercise CLI commands against a real binary and API.

Testing & QA 287 stars 14 forks Updated today Apache-2.0

Install

View on GitHub

Quality Score: 85/100

Stars 20%
82
Recency 20%
100
Frontmatter 20%
70
Documentation 15%
100
Issue Health 10%
50
License 10%
100
Description 5%
100

Skill Content

# CLI E2E Test Authoring ## Overview Add end-to-end tests that exercise the Packmind CLI binary (`dist/apps/cli/main.cjs`) in realistic conditions. Tests run the actual CLI as a child process and, when authentication is needed, interact with a running API via HTTP gateways. ## Test File Location All spec files live in `apps/cli-e2e-tests/src/` and follow the naming convention `<command>.spec.ts`. ## Choosing a Test Wrapper Two wrappers are available depending on whether the command requires authentication. ### Unauthenticated commands — `describeWithTempSpace` Provides an isolated temporary directory. No API required. ```typescript import { describeWithTempSpace, runCli } from './helpers'; describeWithTempSpace('my-command without auth', (getContext) => { let result: Awaited<ReturnType<typeof runCli>>; beforeEach(async () => { const { testDir } = await getContext(); result = await runCli('my-command', { cwd: testDir }); }); it('exits with code 1', () => { expect(result.returnCode).toBe(1); }); it('shows an error message', () => { expect(result.stdout).toContain('No credentials found'); }); }); ``` ### Authenticated commands — `describeWithUserSignedUp` Extends `describeWithTempSpace` by creating a real user account, signing in, and generating an API key. Requires a running API at `http://localhost:4200`. ```typescript import { describeWithUserSignedUp, runCli } from './helpers'; describeWithUserSignedUp('my-command with auth', (g...

Details

Author
PackmindHub
Repository
PackmindHub/packmind
Created
8 months ago
Last Updated
today
Language
TypeScript
License
Apache-2.0

Similar Skills

Semantically similar based on skill content — not just same category

Testing & QA Solid

cli-e2e-test-harness

Set up E2E test harness for CLI applications with process spawning and assertions.

1,160 Updated today
a5c-ai
Testing & QA Listed

cypress-e2e-testing

End-to-end testing skill using Cypress for web applications, covering custom commands, network intercepts, fixtures, cy.session, and component testing patterns.

3 Updated today
KaliBellion
Testing & QA Listed

e2e-testing

Plans, generates, runs, and heals end-to-end tests using Playwright Test Agents (Planner, Generator, Healer) and the official `@playwright/mcp` server. Drives a spec-first feature-flow loop, proposes `data-testid` source diffs only when accessibility-tree locators fail, and stays token-aware via snapshot mode and `--last-failed` reruns. Use when adding E2E coverage, verifying a user journey, hardening a flaky flow, or wiring Playwright MCP into a repo. Triggers on "test this flow", "add e2e", "verify the user journey", "write e2e test", "feature test", "playwright agents", "/e2e-testing".

4 Updated 2 days ago
mthines
Testing & QA Solid

running-e2e-tests

Execute end-to-end tests covering full user workflows across frontend and backend. Use when performing specialized testing. Trigger with phrases like "run end-to-end tests", "test user flows", or "execute E2E suite".

2,274 Updated today
jeremylongshore
Testing & QA Solid

skillshare-cli-e2e-test

Run isolated E2E tests in devcontainer from ai_docs/tests runbooks. Use this skill whenever the user asks to: run an E2E test, execute a test runbook, validate a feature end-to-end, create a new runbook, or test CLI behavior in isolation. If you need to run a multi-step CLI validation sequence (init → install → sync → verify), this is the skill — it handles ssenv isolation, flag verification, and structured reporting. Prefer this over ad-hoc docker exec sequences for any test that follows a runbook or needs reproducible isolation.

2,096 Updated today
runkids