一款用于iOS的视图单元测试框架,通过对比视图的屏幕截图与参考图来验证UI的正确性。
- 8.0.0
- 发布于
- 2021年10月22日
- 1,865
- 星标
- 71,716
- 下载
- 同步于
- 1 天前
最新版本
8.0.02021年10月22日 11:40下载慢?可在上方随时切换镜像源
项目说明
项目概述
iOSSnapshotTestCase(原FBSnapshotTestCase)是一个用于iOS的视图单元测试框架。它能够对UIView或CALayer进行截图,并与代码库中存储的参考图像进行比对,若两者不一致则测试失败。这解决了UI代码难以进行逻辑测试的痛点。
主要功能
- 快照测试:自动捕获并对比视图的屏幕截图。
- 清晰的失败反馈:当测试失败时,会提供图像差异,直观显示变化。
- 易于集成:支持CocoaPods、Carthage和Swift Package Manager。
- 自动化命名:根据测试类和选择器自动命名参考图像。
适用人群
- iOS开发者
- 需要确保UI组件在各种状态下显示正确的团队
- 希望将UI测试自动化的质量保证工程师
快速上手
- 通过CocoaPods、Carthage或Swift Package Manager将框架添加到项目中。
- 在测试Scheme中设置
FB_REFERENCE_IMAGE_DIR环境变量,指向存储参考图像的目录。 - 创建一个继承自
FBSnapshotTestCase的测试类,并在测试方法中调用FBSnapshotVerifyView。 - 首次运行测试时,在
setUp方法中开启self.recordMode = YES;来生成参考图像。 - 关闭记录模式,再次运行测试进行验证。
核心优势
- 直观验证:通过图像差异直观展示UI的变化。
- 减少断言:用视觉对比代替繁琐的矩形断言。
- 社区支持:源自Uber和Facebook,有良好的社区基础。
系统要求
- 操作系统:iOS、macOS(用于测试)
历史版本
排序