SuperAPI AI 工具集

fitness-functions

测试与质量

查看项目

更新于 10-16 00:23

技能介绍

用途:该技能面向 .NET 项目,用自动化测试验证架构特性,即“适应度函数”,确保系统在演进中保持既定架构属性。

主要能力:支持依赖约束(如 Domain 不依赖 Infrastructure)、分层规则、命名约定、性能指标和圈复杂度等类型的检查。可强制模块隔离与共享内核约束,测试运行时性能(响应时间、内存分配),并生成架构测试代码及审计现有违规。

使用方式:先安装包 dotnet add package NetArchTest.Rules;或安装 ArchUnitNET 及 ArchUnitNET.xUnit / .NUnit。创建测试项目 dotnet new xunit -n YourSolution.ArchitectureTests,并引用 Domain、Application、Infrastructure 等项目。使用 NetArchTest 的流式 API 或 ArchUnitNET 的规则语法编写测试,例如 Types.InAssembly(...).ShouldNot().HaveDependencyOn(...)。可用 [Trait("Category", "Architecture")] 分类,并通过 dotnet test --filter Category=Architecture 在 CI 中运行。直接调用时会解析参数、分析项目结构、评估适应度、生成报告,并可用 --generate 生成 DependencyTests、NamingConventionTests、StructureTests 等。

适用场景:模块化单体、整洁架构、六边形架构、垂直切片等需要守护边界的 .NET 项目,也适合与事件风暴发现的限界上下文配合,在 CI/CD 中阻止违规合并。

限制:主要面向 .NET 生态并使用 NetArchTest 与 ArchUnitNET;性能测试可能不稳定,需预热、隔离环境和多次运行;需注意间接依赖导致的误报,并为合法依赖添加排除项。其他平台、具体收费与价格信息暂未提供。