Table of Contents

Class RetryMetadata

Namespace
Xping.Sdk.Core.Models
Assembly
Xping.Sdk.Core.dll

Represents metadata about test retry behavior and configuration.

public sealed class RetryMetadata
Inheritance
RetryMetadata
Inherited Members

Remarks

This metadata helps identify flaky tests that pass only after retry, tests with timing issues that consistently pass on the Nth retry, and patterns indicating test reliability problems.

Properties

AdditionalMetadata

Gets the additional retry-related metadata.

public Dictionary<string, string> AdditionalMetadata { get; }

Property Value

Dictionary<string, string>

Remarks

Used for framework-specific or custom retry attribute properties. Examples: retry filter types, exception types to retry on, custom conditions.

AttemptNumber

Gets or sets the current attempt number for this test execution.

public int AttemptNumber { get; set; }

Property Value

int

Remarks

1 = first run (no retry), 2 = first retry, 3 = second retries, etc. This enables analysis of "pass on Nth attempt" patterns.

DelayBetweenRetries

Gets or sets the configured delay between retry attempts.

public TimeSpan DelayBetweenRetries { get; set; }

Property Value

TimeSpan

Remarks

This is the delay configured in the retry attribute. Actual delay may vary based on framework implementation.

MaxRetries

Gets or sets the maximum number of retries configured for this test.

public int MaxRetries { get; set; }

Property Value

int

Remarks

This is the total number of retry attempts allowed, not including the initial attempt. For example, MaxRetries = 3 means: 1 initial attempt + 3 retry attempts = 4 total attempts.

PassedOnRetry

Gets or sets whether this test passed after a retry (not on the first attempt).

public bool PassedOnRetry { get; set; }

Property Value

bool

Remarks

False = passed on the first attempt (no retry needed) True = passed after one or more retries (indicates flakiness)

RetryAttributeName

Gets or sets the name of the retry attribute or strategy used.

public string? RetryAttributeName { get; set; }

Property Value

string

Remarks

Examples: "RetryFact", "Retry", "TestRetry", "CustomRetry" Helps identify which retry mechanism is being used.

RetryReason

Gets or sets the reason for the retry configuration.

public string? RetryReason { get; set; }

Property Value

string

Remarks

Examples: "Timeout", "NetworkError", "DatabaseContention", "RaceCondition" This is typically extracted from custom retry attributes or attribute properties. May be null if not specified by the test author.