1.1 KiB
1.1 KiB
测试说明 (@go/convert)
本模块采用基于类型映射的测试策略,涵盖了从基础类型转换到高并发下结构体映射的全面场景。
覆盖场景
- 类型矩阵测试:覆盖 int, string, float, bool 等基础类型在不同容器间的互转。
- 零摩擦映射:测试单值与切片的自动包装与解包、CSV/JSON 字符串到切片的转换。
- 复杂指针处理:验证多级指针到值的深度穿透及自动初始化。
- 模糊匹配逻辑:涵盖各种不规范命名风格(下划线、大小写混用、特殊符号)到 Struct 字段的成功匹配。
- 函数代理:验证 Func to Func 映射的准确性。
- 扩展钩子:验证
ParseXxx的自定义逻辑挂载。 - 防御性编程:模拟
nil指针解引用、只读目标地址等非法调用,确保不发生 Panic。
性能表现
基准测试 (BenchmarkMatrixConvert) 在典型的 Struct 映射场景下表现为:
- 平均耗时:~1020 ns/op
- 吞吐量:高并发环境下 O(1) 查找速度,无锁热点竞争。