【发布时间】:2023-03-23 07:44:01
【问题描述】:
在 Xcode 7 中,cocoapods 库的库具有排除代码覆盖率。
但在 Xcode 8 中,该库将包含代码覆盖率。
我是否可以在代码覆盖范围内排除该库?
示例: 安装吊舱“TPKeyboardAvoiding” TPKeyboardAvoidingScrollView.m 包含在代码覆盖范围内。
【问题讨论】:
标签: cocoapods code-coverage xcode8
在 Xcode 7 中,cocoapods 库的库具有排除代码覆盖率。
但在 Xcode 8 中,该库将包含代码覆盖率。
我是否可以在代码覆盖范围内排除该库?
示例: 安装吊舱“TPKeyboardAvoiding” TPKeyboardAvoidingScrollView.m 包含在代码覆盖范围内。
【问题讨论】:
标签: cocoapods code-coverage xcode8
您应该为不想被覆盖的目标禁用代码覆盖。如果您希望您的所有 pod 不包含在代码覆盖范围内,您可以添加到您的 podfile 中
# Disable Code Coverage for Pods projects
post_install do |installer_representation|
installer_representation.pods_project.targets.each do |target|
target.build_configurations.each do |config|
config.build_settings['CLANG_ENABLE_CODE_COVERAGE'] = 'NO'
end
end
end
这将禁用您的 Pod 目标的代码覆盖率,例如 this image
如果您现在使用command + U 运行测试
我在我的一个项目中尝试使用这个 pod,它对我有用。我正在使用 Xcode 版本 8.1 (8B62)
无论如何,对于像 Cartography 这样的其他 pod,我仍在努力解决同样的问题。有一个特定的设置(我还没有发现)它似乎覆盖了CLANG_ENABLE_CODE_COVERAGE,并且测试仍然为此生成代码覆盖率。
如果这能解决您的问题,请告诉我。
【讨论】:
pod install