Microsoft logo

Skill

tester.testing-patterns

apply xUnit testing patterns for DataFactory

Covers QA Microsoft MCP Engineering Testing

Description

xUnit testing patterns and conventions for DataFactory.MCP. Use when writing tests, fixing test failures, or adding test coverage.

SKILL.md

Testing in DataFactory.MCP

Test Stack

  • Framework: xUnit ([Fact], [Theory], [InlineData])
  • Runner: xunit.runner.visualstudio
  • Skippable: Xunit.SkippableFact ([SkippableFact], Skip.If(...))
  • Coverage: coverlet
  • Target: net10.0

Test Location

All tests live in DataFactory.MCP.Tests/.

Commands

TaskCommand
Run alldotnet test
Verbosedotnet test -v normal
Filterdotnet test --filter "FullyQualifiedName~TestName"
Coveragedotnet test --collect:"XPlat Code Coverage"

Naming Convention

MethodName_Scenario_ExpectedResult

Examples:

  • Authenticate_WithValidCredentials_ReturnsToken
  • ListGateways_WhenNotAuthenticated_ThrowsException
  • CreateConnection_WithInvalidType_ReturnsError

Test Patterns

Unit Test (Arrange-Act-Assert)

public class MyServiceTests
{
    [Fact]
    public void MethodName_Scenario_ExpectedResult()
    {
        // Arrange
        var service = new MyService();

        // Act
        var result = service.DoSomething();

        // Assert
        Assert.NotNull(result);
        Assert.Equal("expected", result.Value);
    }
}

Parameterized Tests

[Theory]
[InlineData("input1", "expected1")]
[InlineData("input2", "expected2")]
public void MethodName_WithVariousInputs_ReturnsExpected(string input, string expected)
{
    var result = MyService.Process(input);
    Assert.Equal(expected, result);
}

Skippable Tests (for environment-dependent tests)

[SkippableFact]
public void IntegrationTest_RequiresAuth()
{
    Skip.If(string.IsNullOrEmpty(Environment.GetEnvironmentVariable("AZURE_CLIENT_ID")),
        "Requires Azure credentials");
    // test body
}

What to Test

  • Tools: Parameter validation, response formatting, error handling
  • Services: API call construction, response parsing, error translation
  • Models: Serialization/deserialization roundtrips
  • Edge cases: Null inputs, empty collections, unauthenticated state, API errors

Evaluation Scenarios

Reference evals/ for integration test scenarios:

  • authentication.eval.md, connections.eval.md, dataflows.eval.md
  • gateways.eval.md, pipelines.eval.md, multi-step.eval.md

© 2026 YourAI.tools. Every skill from an identity-verified publisher.

Independent catalog. Not affiliated with, endorsed by, or sponsored by Anthropic or any listed publisher. All trademarks belong to their respective owners.