Skip to main content

qe-test-execution

Orchestrates test suite execution with parallel sharding, intelligent retry, and real-time reporting across Jest, Vitest, and Playwright. Use when running test suites, optimizing execution time, handling flaky tests, configuring CI test pipelines, or analyzing test run results.

来源信息

仓库
proffesor-for-testing/agentic-qe
最近来源活动
2026年9月27日 15:26
检测到的 SKILL.md 语言
英语
星标
494
分支
98

安装方式

默认使用会先检查来源的 Prompt;你也可以切换为直接命令,或下载本地副本。

检查来源文件

决定是否安装前,请先阅读 SKILL.md,以及 SkillsMP 当前展示的配套文件。

文件资源管理器
4 个文件

正在显示 SKILL.md

SKILL.md
来源说明 · 只读预览
name
qe-test-execution
description
Orchestrates test suite execution with parallel sharding, intelligent retry, and real-time reporting across Jest, Vitest, and Playwright. Use when running test suites, optimizing execution time, handling flaky tests, configuring CI test pipelines, or analyzing test run results.
trust_tier
3
validation
{"schema_path":"schemas/output.json","validator_path":"scripts/validate-config.json","eval_path":"evals/qe-test-execution.yaml"}
# QE Test Execution ## Purpose Guide the use of v3's test execution capabilities including parallel orchestration, smart test selection, flaky test handling, and distributed execution across multiple environments. ## Activation - When running test suites - When optimizing test execution time - When handling flaky tests - When setting up CI/CD test pipelines - When executing tests across environments ## Quick Start ```bash # Run all tests with parallelization aqe test run --parallel --workers 4 # Run affected tests only aqe test run --affected --since HEAD~1 # Run with retry for flaky tests aqe test run --retry 3 --retry-delay 1000 # Run specific test types aqe test run --type unit,integration --exclude e2e ``` ## Agent Workflow ```typescript // Orchestrate test execution Task("Execute test suite", ` Run the full test suite with: - 4 parallel workers - Retry flaky tests up to 3 times - Generate JUnit report - Fail fast on critical tests Report results and any failures. `, "qe-test-executor") // Smart test selection Task("Run affected tests", ` Analyze changes in PR #123 and: - Identify affected test files - Run only relevant tests - Include integration tests for changed modules - Report coverage delta `, "qe-test-selector") ``` ## Execution Strategies ### 1. Parallel Execution ```typescript await testExecutor.runParallel({ suites: ['unit', 'integration'], workers: 4, distribution: 'by-file', // or 'by-test', 'by-duration' isolation: 'process', sharding: { enabled: true, total: 4, index: process.env.SHARD_INDEX } }); ``` ### 2. Smart Test Selection ```typescript await testExecutor.runAffected({ changes: gitChanges, selection: { direct: true, // Tests for changed files transitive: true, // Tests for dependents integration: true // Integration tests touching changed code }, fallback: 'full-suite' // If analysis fails }); ``` ### 3. Flaky Test Handling ```typescript await testExecutor.handleFlaky({ detection: { enabled: true, threshold: 0.1, // 10% flake rate window: 100 // Last 100 runs }, strategy: { retry: 3, quarantine: true, notify: ['#flaky-tests'] } }); ``` ## Execution Configuration ```yaml execution: parallel: workers: auto # CPU cores - 1 timeout: 30000 bail: false retry: count: 2 delay: 1000 only_failed: true reporting: formats: [junit, json, html] include_timing: true include_logs: true environments: - name: node-18 image: node:18-alpine - name: node-20 image: node:20-alpine ``` ## CI/CD Integration ```yaml # GitHub Actions example test: runs-on: ubuntu-latest strategy: matrix: shard: [1, 2, 3, 4] steps: - uses: actions/checkout@v4 - name: Run tests run: | aqe test run \ --shard ${{ matrix.shard }}/4 \ --parallel \ --report junit - name: Upload results uses: actions/upload-artifact@v4 with: name: test-results-${{ matrix.shard }} path: reports/ ``` ## Result Aggregation ```typescript interface ExecutionResults { summary: { total: number; passed: number; failed: number; skipped: number; flaky: number; duration: number; }; shards: ShardResult[]; failures: TestFailure[]; flakyTests: FlakyTest[]; coverage: CoverageReport; timing: TimingAnalysis; } ``` ## Gotchas - Full test suites may OOM in containers — the rule "don't run full suite" was violated 20x despite being in CLAUDE.md. Fix: make suite lightweight, don't just add more rules - Fewer focused agents (3-4) outperform many vague ones (6-8) — always include verification command in each agent prompt - New model releases can shift agent behavior mid-sprint — rules followed yesterday may be ignored today after model update - Running all tests in parallel can mask flaky tests — use `--workers=1` for initial diagnosis - Session crashes lose all context — save intermediate results to disk, not just memory ## Coordination **Primary Agents**: qe-test-executor, qe-test-selector, qe-flaky-detector **Coordinator**: qe-test-execution-coordinator **Related Skills**: qe-test-generation, qe-coverage-analysis
在 GitHub 查看