Skip to content
bitzorcas
EN

Reference

架构测试

架构强制测试 — 模块边界验证、DI 注册正确性、代码约定检查和依赖规则执行。

Last updated

BitzOrcas.Architecture.Tests 执行架构规则检查,这些规则通常只能在代码审查中发现。这些测试防止结构性违规积累。

检查内容

规则描述
模块边界模块不直接引用其他模块内部
DI 注册所有必需的服务已注册且可解析
命名约定实体名称遵循 biz_/sys_ 前缀约定
依赖方向Domain → Application → Infrastructure(永不反向)
AOT 兼容性AOT 启用的项目中无重度反射模式

模块边界验证

使用 NetArchTest 或自定义反射检查:

// 验证模块不依赖彼此的内部
var result = Types.InAssembly(moduleAssembly)
.ShouldNot()
.HaveDependencyOn(otherModuleAssembly)
.GetResult();

DI 注册测试

验证所有必需服务可被解析:

[Fact]
public void CoreRuntime_AllRequiredServices_ShouldBeResolvable()
{
var services = new ServiceCollection();
services.AddBitzOrcasCoreRuntime(MockConfiguration);
var provider = services.BuildServiceProvider();
provider.GetRequiredService<ICorrelationContext>();
provider.GetRequiredService<IAppClock>();
provider.GetRequiredService<IAuditLogger>();
// ... 所有核心服务
}

运行

Terminal window
dotnet test tests/BitzOrcas.Architecture.Tests