iOS单元测试框架
使用苹果Xcode自带的XCTest框架。这里不做特别说明,直接在网上搜索相关文章即可。
使用cocoapods进行iOS组件开发
cocoapods的使用这里也不做特别说明,这里重点说明一下单元测试相关的内容。
一般组件的单元测试有两种方式呈现
写在Example工程中,工程依赖组件代码即可
写在组件的子库中
这里说明后者。
cocoapods iOS组单元测试
添加test_spec,并依赖想要测试的子库
依赖XcodeCoverage来导出单元测试覆盖率
s.test_spec 'Tests' do |h|
h.source_files = 'TestExample/Tests/**/*.{h,m}'
h.dependency 'TestExample/Core'
h.dependency 'XcodeCoverage','>= 1.3.2'
h.frameworks = 'UIKit','Foundation'
end
复制代码
test_spec的好处在于,不需要和组件的Example工程绑定,任意一个组件使用者都可以跑单元测试并输出单元测试覆盖率。
一般到这里了就可以参考XcodeCoverage说明进行使用即可。但是这里可能比较麻烦,而且每个组件需要单独设置,不是特别方便。因此我这边制作了一个自动化的插件cocoapods-unit-test。
cocoapods-uni