1) 没有tests 文件夹
如果出现问题(下图所示) 找不到.plsit 文件,需要删除单元测试的target 重新建造一个单元测试
2) 单元测试多个target ,很容易出现provisioning 错误
真机运行提示A valid provisioning profile for this executable was not found
错误
A valid provisioning profile for this executable was not found
或提示
The entitlements specified in your application’s Code Signing Entitlements file do not match those specified in your provisioning profile.(0xE8008016).
如果项目在xcode7上真机运行无问题,那么这一切跟你的profile文件和签名文件无关,全部状态都是正确的。各位不用去重置签名文件、profile文件或者各种权限,因为这种情况下,就算重置也是没用的。
问题原因:
Xcode9 在切换Team的时候,并没有把project.pbxproj工程文件里的TeamID进行切换到新的TeamID。
解决办法
找到变换前后两个账号的TeamID,这个可以到ituneconnect里面找,或者直接到project.pbxproj查找,出问题的此刻,已经存在两个不同的teamID。
打开项目里的project.pbxproj工程文件中,把签名TeamID全部手动替换成目标TeamID。DEVELOPMENT_TEAM = XXXX ; XXXX填写新的TeamID.如下图
project.pbxproj工程文件根据Target数量的不同,可能有好几处TeamID,全部替换成目标TeamID再次运行即可。
如果上述方案还不行,可能有缓存,删除app,删除derived data 即可解决
2.1) 单元测试的真机证书配置的正确姿势
主工程配置,使用自己的账号
单元测试工程,和主工程配置一样
2.3) 知道公司证书账号密码的解决方案
如果知道 公司的账号和密码 主工程和单元测试都填写自己和公司的账号就可以搞定
3) 开启单元测试
第一个三角形,点击run 即可
4) podfile中一定要增加单元测试的target ,否则找不到文件
platform :ios, '7.0'
target 'UnitTestDemoTests' do
pod 'AFNetworking', '~> 2.5.0'
pod 'STAlertView', '~> 1.0.0'
end
target 'UnitTestDemoTestsTests' do
pod 'AFNetworking', '~> 2.5.0'
pod 'STAlertView', '~> 1.0.0'
end
5) 查看代码覆盖率
步骤1
步骤2,按照步骤点击
作者开发经验总结的文章推荐,持续更新学习心得笔记
五星推荐 Runtime 10种用法(没有比这更全的了)
五星推荐 成为iOS顶尖高手,你必须来这里(这里有最好的开源项目和文章)
五星推荐 iOS逆向Reveal查看任意app 的界面
五星推荐手把手教你使用python自动打包上传应用分发
JSPatch (实时修复App Store bug)学习(一)
iOS 高级工程师是怎么进阶的(补充版20+点)
扩大按钮(UIButton)点击范围(随意方向扩展哦)
最简单的免证书真机调试(原创)
通过分析微信app,学学如何使用@2x,@3x图片
TableView之MVVM与MVC之对比
使用MVVM减少控制器代码实战(减少56%)
ReactiveCocoa添加cocoapods 配置图文教程及坑总结