Analyze a GitHub Actions integration test run and produce a skill invocation report with failure root-cause issues. TRIGGERS: analyze test run, skill invocation rate, test run report, compare test runs, skill invocation summary, test failure analysis, run report, test results, action run report
复制安装指令,让 AI 自动完成配置 · 推荐新手
请帮我安装 askskill 上的 "analyze-test-run" 技能: 1. 下载 https://raw.githubusercontent.com/microsoft/GitHub-Copilot-for-Azure/main/.github/skills/analyze-test-run/SKILL.md 2. 保存为 ~/.claude/skills/analyze-test-run/SKILL.md 3. 装好后重载技能,告诉我可以用了
Downloads artifacts from a GitHub Actions integration test run, generates a summarized skill invocation report, and files GitHub issues for each test failure with root-cause analysis.
| Parameter | Required | Description |
|---|---|---|
| Run ID or URL | Yes | GitHub Actions run ID (e.g. 22373768875) or full URL |
| Comparison Run | No | Second run ID/URL for side-by-side comparison |
All tools use owner: "microsoft" and repo: "GitHub-Copilot-for-Azure" as fixed parameters. method selects the operation within the tool.
| Tool | method | Key Parameter | Purpose |
|---|---|---|---|
actions_get | get_workflow_run | resource_id: run ID | Fetch run status and metadata |
actions_list | list_workflow_run_artifacts | resource_id: run ID | List all artifacts for a run |
actions_get | download_workflow_run_artifact | resource_id: artifact ID | Get a temporary download URL for an artifact ZIP |
get_job_logs | — | run_id + failed_only: true | Retrieve job logs when artifact content is inaccessible |
search_issues | — | query: search string | Find existing open issues before creating new ones |
create_issue | — | title, body, labels, assignees | File a new GitHub issue for a test failure |
Extract the numeric run ID from the input (strip URL prefix if needed)
Fetch run metadata using the MCP actions_get tool:
actions_get({ method: "get_workflow_run", owner: "microsoft", repo: "GitHub-Copilot-for-Azure", resource_id: "<run-id>" })
List artifacts using the MCP actions_list tool, then download each relevant artifact:
// List artifacts
actions_list({ method: "list_workflow_run_artifacts", owner: "microsoft", repo: "GitHub-Copilot-for-Azure", resource_id: "<run-id>" })
// Download individual artifacts by ID
actions_get({ method: "download_workflow_run_artifact", owner: "microsoft", repo: "GitHub-Copilot-for-Azure", resource_id: "<artifact-id>" })
The download returns a temporary URL. Fetch the ZIP archive from that URL and extract it locally. If the environment restricts outbound HTTP (e.g. AWF sandbox), record in the analysis report that artifact content was unavailable and fall back to job logs via the get_job_logs MCP tool.
Locate these files in the downloaded artifacts:
junit.xml — test pass/fail/skip/error results*-SKILL-REPORT.md — generated skill report with per-test detailsagent-metadata-*.md files — raw agent session logs per test⚠️ Note: If artifact ZIP files cannot be downloaded due to network restrictions, or if downloaded files cannot be extracted, use the
get_job_logsMCP tool to identify test failures and produce a best-effort analysis from whatever data is accessible.
Produce a markdown report with four sections. See report-format.md for the exact template.
Section 1 — Test Results Overview
Parse junit.xml to build:
| Metric | Value |
|---|---|
| Total tests | count from <testsuites tests=…> |
| Executed | total − skipped |
| Skipped | count of <skipped/> elements |
| Passed | executed − failures − errors |
| Failed | count of <failure> elements |
| Test Pass Rate | passed / executed as % |
Include a per-test table with name, duration (from time attribute, convert seconds to Xm Ys), and Pass/Fail result.
Section 2 — Skill Invocation Rate
…
Guidance for instrumenting webapps with Azure Application Insights. Provides telemetry patterns, SDK setup, and configuration references. WHEN: how to instrument app, App Insights SDK, telemetry patterns, what is App Insights, Application Insights guidance, instrumentation examples, APM best practices.
Query the integration-test storage account to find why a specific skill's tests are failing. Reads blob-stored test result files and surfaces error details. TRIGGERS: why is skill failing, skill test failures, debug skill tests, skill failing tests, analyze skill failures, why are tests failing for skill, skill test errors, investigate skill issues. DO NOT USE FOR: analyzing a GitHub Actions run report or comparing test runs across runs (use analyze-test-run).
File a GitHub issue for local integration test failures. TRIGGERS: file test bug, report test failure, create bug for test, integration test failed, test failure issue, junit failure
Investigate a failing integration test from a GitHub issue. Downloads logs/artifacts, analyzes the failure, examines relevant skills, and suggests fixes. TRIGGERS: investigate integration test, debug integration test, failing integration test, test failure investigation, diagnose test failure, analyze test issue
Analyzes markdown files for token efficiency. TRIGGERS: optimize markdown, reduce tokens, token count, token bloat, too many tokens, make concise, shrink file, file too large, optimize for AI, token efficiency, verbose markdown, reduce file size
Use for Azure AI: Search, Speech, OpenAI, Document Intelligence. Helps with search, vector/hybrid search, speech-to-text, text-to-speech, transcription, OCR. WHEN: AI Search, query search, vector search, hybrid search, semantic search, speech-to-text, text-to-speech, transcribe, OCR, convert text to speech.