1.4 KiB
1.4 KiB
Testing @go/vision
go/vision 拥有完善的单元测试覆盖,确保在各种图像处理场景下的稳定性。
运行测试
在 vision 目录下运行标准 Go 测试命令:
go test -v .
测试覆盖范围
- Canvas & Drawing: 验证基础绘图、颜色解析、图层叠加等功能。
- Intelligence:
QRCode: 验证二维码的生成与识别一致性。Barcode: 验证条形码 (Code128, UPC) 的生成与识别。PHash: 验证相似图片的指纹距离计算。
- Captcha: 验证图形验证码的生成。
- Transform: 验证缩放、旋转以及复杂的
WarpPerspective透视变换。 - Animation: 验证 GIF 序列的合成。
视觉回归测试
部分测试会生成临时的图片文件(如 test.png, captcha.png),测试脚本会自动清理这些文件。在开发新滤镜或绘图功能时,建议手动查看生成的图片以确保视觉效果符合预期。
性能基准测试
可以使用以下命令运行基准测试:
go test -bench .
以下是在 Intel(R) Core(TM) i9-9980HK CPU @ 2.40GHz 环境下的基准测试结果:
| 测试项 | 耗时 (ns/op) |
|---|---|
| WarpPerspective | 7,079,540 |
| PHash | 958,618 |
| ExtractPalette | 402,176 |
所有测试均遵循 @go 基础设施标准,无外部系统依赖(除 FFmpeg 视频测试外,该部分会自动跳过或提示引导)。