arch-test

Generate architecture tests to enforce structural rules

SKILL.md

GitHub

Architecture Tests

Generate tests that enforce architectural rules and prevent drift.

For .NET (NetArchTest)

dotnet add package NetArchTest.Rules
[Fact]
public void Controllers_ShouldNotReference_Repositories()
{
    Types.InAssembly(typeof(Program).Assembly)
        .That().ResideInNamespace("Controllers")
        .ShouldNot().HaveDependencyOn("Repositories")
        .GetResult().IsSuccessful.Should().BeTrue();
}

[Fact]
public void Services_ShouldHave_InterfacePrefix()
{
    Types.InAssembly(typeof(Program).Assembly)
        .That().ResideInNamespace("Services.Interfaces")
        .Should().HaveNameStartingWith("I")
        .GetResult().IsSuccessful.Should().BeTrue();
}

Arguments

  • --rules=<layers|naming|dependencies>: Which rules to generate