SuperAPI AI 工具集

integration-test-analysis

测试与质量

查看项目

更新于 10-15 21:12

技能介绍

用途:调查 roslyn-integration-CI 流水线中 Visual Studio 集成测试的失败、超时或崩溃,适用于构建 URL 指向 dev.azure.com/dnceng-public 且含 VS_Integration_* 作业的场景。该技能仅针对 Roslyn VS 集成测试,通用 CI 分析应改用 ci-analysis。

主要能力:脚本先获取构建时间线与作业状态,识别失败/取消的集成测试作业并计算时长、检测超时;再解析“Run Integration Tests”步骤日志,判断测试程序集运行/排队/完成数量、失败时正在运行的测试、VSIX 安装状态与测试运行器命令行;配合 -DownloadArtifacts 可下载并解析已发布产物,包括 .Activity.xml 异常日志、Screenshots 与根目录截图、MEFErrors.txt、VSIXInstaller*.log、ServiceHub*.log、StartingBuild.png,并按来源分组错误、识别根因模式(如程序集加载失败、服务激活失败)。

使用方式:先执行 dotnet tool restore,再运行 dotnet pwsh -File .github/skills/integration-test-analysis/scripts/Get-IntegrationTestStatus.ps1 -BuildId 1354185;加 -DownloadArtifacts 下载产物,-MaxArtifactSizeMB 限制大小(默认 200MB),-Organization 默认 dnceng-public,-Project 默认 public。脚本输出可读文本与 [INTEGRATION_TEST_SUMMARY] JSON,由使用者据此综合根因。

适用场景:集成测试超时(作业约 150 分钟后被取消)、服务激活失败、MEF 组合错误、VSIX 安装失败等。

限制:仅适用于 Roslyn VS 集成测试;产物超过大小限制会被跳过并警告;脚本只收集数据,诊断需人工完成;其他事实暂未提供。