test-management

Quarantine or disable flaky tests in dotnet/aspire using QuarantineTools.

6.2k|952|Updated Sep 25, 2023
One-click install
npx skills add https://github.com/dotnet/aspire --skill test-management
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: test-management
Source: https://github.com/dotnet/aspire/tree/main/.github/skills/test-management
Command: npx skills add https://github.com/dotnet/aspire --skill test-management

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

This Skill helps engineers quarantine or disable flaky or problematic tests in the dotnet/aspire repository using the QuarantineTools utility, reducing CI noise.

Core Features & Use Cases

  • Quarantine flaky tests by applying the QuarantineTools attribute to individual test methods.
  • Disable or enable tests based on issue tracking, following project guidelines.
  • Manage conditional quarantines for platform-specific runs (e.g., only on Azure DevOps or CI hosts).

Quick Start

Run the QuarantineTools for each test method to quarantine or disable. Example commands: dotnet run --project tools/QuarantineTools -- -q -m activeissue -i https://github.com/dotnet/aspire/issues/XXXXX Namespace.Type.Method

  • For multiple tests, repeat the command per test.
  • After modifications, build and verify the test projects to ensure tests are skipped.

Frequently Asked Questions about test-management

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I quarantine flaky tests in the dotnet aspire repository?

To quarantine flaky tests in the dotnet aspire repository, run the QuarantineTools utility with a valid GitHub issue URL to apply issue-based quarantines to individual test methods. This modifies test attributes directly without altering the underlying test logic.

Can I disable a problematic test only for specific CI platforms?

Yes, you can disable problematic tests for specific CI platforms by applying conditional quarantines. QuarantineTools supports platform-specific conditions, allowing you to quarantine or disable tests only for runs on Azure DevOps or CI hosts.

Do I need a GitHub issue link to disable a test using QuarantineTools?

Yes, a valid GitHub issue URL is required to disable a test using QuarantineTools. The skill applies issue-based quarantines or disables, ensuring that skipping problematic tests in the CI pipeline is always tracked.

What is the best way to manage multiple flaky tests in dotnet CI pipelines?

The best way to manage multiple flaky tests in dotnet CI pipelines is to run the QuarantineTools project for each test method. You repeat the command per test to apply issue-based quarantines, reducing CI noise across test projects.

How do I verify that a quarantined test is actually skipped during a build?

To verify a quarantined test is skipped, build and run the test projects after modifying the test attributes with QuarantineTools. This confirms that the issue-based quarantine or disable was successfully applied to the targeted test method.