Agent Skillsnovuhq/novu › testerarmy-cli

testerarmy-cli

GitHub

TesterArmy CLI 工具,用于创建、组织和运行仪表盘管理的 QA 测试。支持项目上下文配置、凭证管理及测试用例定义,优先使用持久化测试和远程执行,适用于回归覆盖、QA 流程添加及 CI 检查集成。

.agents/skills/testerarmy-cli/SKILL.md novuhq/novu

Trigger Scenarios

定义回归测试覆盖范围 添加或更新 QA 流程 配置 CI/CD 中的检查任务 将验收标准转化为仪表盘测试

Install

npx skills add novuhq/novu --skill testerarmy-cli -g -y
More Options

Non-standard path

npx skills add https://github.com/novuhq/novu/tree/next/.agents/skills/testerarmy-cli -g -y

Use without installing

npx skills use novuhq/novu@testerarmy-cli

指定 Agent (Claude Code)

npx skills add novuhq/novu --skill testerarmy-cli -a claude-code -g -y

安装 repo 全部 skill

npx skills add novuhq/novu --all -g -y

预览 repo 内 skill

npx skills add novuhq/novu --list

SKILL.md

Frontmatter
{
    "name": "testerarmy-cli",
    "license": "MIT",
    "metadata": {
        "tags": "testerarmy, qa, cli, dashboard-tests, regression, ci",
        "author": "TesterArmy"
    },
    "description": "Use TesterArmy CLI to create, organize, and run dashboard-managed QA tests. Prefer saved tests, groups, project context, credentials, and remote runs over one-off local prompts. Trigger when defining regression coverage, adding QA flows, or wiring CI checks."
}

TesterArmy CLI

Create dashboard-managed QA coverage with ta / testerarmy.

Default to saved dashboard tests, groups, project context, credentials, and remote runs. Use local ta run "..." only for quick exploration.

When to Use

  • Create persistent QA coverage for a feature or product area.
  • Convert acceptance criteria into dashboard tests.
  • Add or update smoke, regression, auth, billing, onboarding, or mobile flows.
  • Prepare CI-visible groups for PRs or releases.

Setup

Check auth:

ta status --json

If needed:

ta auth
TESTERARMY_API_KEY=<key> ta status --json

Discover scope:

ta projects list --json
ta groups list --project <projectId> --json
ta tests list --project <projectId> --json

Use IDs exactly as returned.

Project Context

Create a project:

echo '{"name":"Example","url":"https://example.com","projectType":"web"}' | ta projects create --json

Store app knowledge:

echo '{"category":"site_structure","title":"Auth route","content":"Login is at /login","importance":"high"}' | ta memories create --project <projectId> --json

Memory categories: site_structure, test_insights, user_preferences.

Create credentials for login or inbox flows:

echo '{"kind":"login","label":"Admin","username":"admin@example.com","password":"secret"}' | ta projects credentials-create <projectId> --json
echo '{"kind":"inbox","label":"Signup inbox"}' | ta projects credentials-create <projectId> --json

Never print real secrets in final messages.

Tests

Create:

echo '{"title":"Login flow","description":"User can sign in and reach the dashboard","steps":[{"title":"Navigate to /login","type":"act"},{"title":"Sign in with the saved admin credentials","type":"login","credentialId":"<credentialId>"},{"title":"Dashboard loads and shows the project list","type":"assert"}]}' | ta tests create --project <projectId> --json

Create in a group:

echo '{"title":"Pricing CTA","steps":[{"title":"Open /pricing","type":"act"},{"title":"Click the primary CTA","type":"act"},{"title":"Signup or dashboard flow starts","type":"assert"}]}' | ta tests create --project <projectId> --group <groupId> --json

Payload:

{
  "title": "string, required",
  "description": "string, optional",
  "platform": "web or mobile, optional",
  "steps": [
    { "title": "User action", "type": "act" },
    { "title": "Expected result", "type": "assert" },
    { "title": "Login instruction", "type": "login", "credentialId": "uuid" },
    { "title": "Use temporary email", "type": "login", "temporaryEmail": true },
    { "title": "Screenshot label", "type": "screenshot" }
  ]
}

Rules:

  • Cover one user journey.
  • Prefer 3-8 meaningful steps.
  • Use act for navigation, clicks, typing, upload, and other user actions.
  • Use assert for visible outcomes, persisted state, email delivery, or URL changes.
  • Use login with credentialId or temporaryEmail; do not put passwords in step titles.
  • Use screenshot only for important visual checkpoints.
  • Maximum 50 steps per test.

Inspect before changing:

ta tests get <testId> --json

Update title, description, or steps:

echo '{"title":"Updated login smoke"}' | ta tests update <testId> --json
echo '{"steps":[{"title":"Open /login","type":"act"},{"title":"Sign in","type":"login","credentialId":"<credentialId>"},{"title":"Dashboard is visible","type":"assert"}]}' | ta tests update <testId> --json

Replacing steps requires the complete array.

Groups

Create suites:

echo '{"projectId":"<projectId>","name":"Smoke"}' | ta groups create --json
ta groups add-test <groupId> <testId> --json
ta groups remove-test <groupId> <testId> --json

Common groups: Smoke, Auth, Core journeys, Mobile smoke.

Runs

Modes:

  • Default/local: fetches a saved test, then runs it on this machine.
  • --remote: queues the saved test in TesterArmy cloud.

Local debugging:

ta tests run <testId> --url http://localhost:3000 --json
ta tests run --group <groupId> --project <projectId> --url http://localhost:3000 --parallel 3 --json

Remote validation:

ta tests run <testId> --remote --wait --json
ta tests run --group <groupId> --project <projectId> --remote --wait --json

Defaults:

  • No --remote: local browser execution.
  • --remote: cloud execution.
  • --wait: wait for remote results.
  • Local-only flags such as --headed, --browser, --timeout, and --system-prompt-file are ignored with --remote.
  • Remote group runs can use --environment production|preview.
  • Remote single-test runs can use --mode fast|deep.

CI:

ta ci --group <groupId> --project <projectId> --target-url https://staging.example.com --json

Runs:

ta runs list --project <projectId> --json
ta runs get <runId> --json
ta runs wait <runId> --timeout 600000 --json
ta runs cancel <runId> --json

Mobile App Coverage

Upload an iOS Simulator app before cloud runs:

ta upload-app --app-path ios/build/Build/Products/Release-iphonesimulator/MyApp.app --project <projectId> --json
ta ci --group <groupId> --project <projectId> --app-id <appId> --delete-app-after-run --json

Supported uploads: .app, .app.zip, .zip, .app.tar.gz, .tar.gz, .tgz. .ipa and Android artifacts are not supported yet.

Local Prompt

ta run <prompt> runs an ad hoc local browser test:

ta run "check pricing CTA" --url https://example.com --json

Use only to explore before creating or updating dashboard tests. Use ta tests create and ta tests run --group for durable workflows.

Reporting

Report:

  • Project ID/name
  • Test IDs and titles created or updated
  • Group IDs/names touched
  • Remote validation command and result, if run
  • Run ID or artifact/output path, if available

Do not claim durable coverage unless ta tests create or ta tests update ran.

References

File Description
reporting-template.md Dashboard coverage report template

Version History

  • 56a8a16 Current 2026-08-29 05:10

Same Skill Collection

.agents/skills/email-best-practices/SKILL.md
.agents/skills/frontend-design/SKILL.md
.agents/skills/linear-release-setup/SKILL.md
.agents/skills/react-email/SKILL.md
.claude/skills/better-auth-best-practices/SKILL.md
.cursor/skills/add-channel-connect-button/SKILL.md
.cursor/skills/add-channel-setup-guide/SKILL.md
.cursor/skills/address-pr-review/SKILL.md
.cursor/skills/better-auth-best-practices/SKILL.md
.cursor/skills/ink-tui/SKILL.md
.cursor/skills/novu-prepare-pr/SKILL.md
.cursor/skills/nv-implement/SKILL.md
.cursor/skills/nv-park-and-review/SKILL.md
.cursor/skills/nv-worktree-cleanup/SKILL.md
.cursor/skills/nv-worktree-commands/SKILL.md
.cursor/skills/nv-worktree-create/SKILL.md
.cursor/skills/run-api-e2e-tests/SKILL.md
.cursor/skills/sanity-changelog/SKILL.md
.cursor/skills/triage-agent-eval-failures/SKILL.md
docs/.mintlify/skills/dashboard-workflows/SKILL.md
docs/.mintlify/skills/manage-preferences/SKILL.md
docs/.mintlify/skills/manage-subscribers/SKILL.md
docs/.mintlify/skills/trigger-notification/SKILL.md
.agents/skills/figma-use/SKILL.md
.cursor/skills/add-channel-whats-next-onboarding/SKILL.md
.cursor/skills/nv-endpoint-routed-tool-provider/SKILL.md
docs/.mintlify/skills/design-workflow/SKILL.md
docs/.mintlify/skills/framework-integration/SKILL.md
docs/.mintlify/skills/inbox-integration/SKILL.md

Metadata

Files
0
Version
56a8a16
Hash
545f26f1
Indexed
2026-08-29 05:10

Accueil - Wiki
Copyright © 2011-2026 iteam. Current version is 2.155.2. UTC+08:00, 2026-09-01 16:25
浙ICP备14020137号-1 $Carte des visiteurs$