我一直在尝试在 Xcode4.4.1 上对 Mac 应用程序进行代码覆盖测试,该应用程序是 10.8 应用程序,因此该应用程序只能通过 Xcode4.4.1 构建和运行。但是使用 Xcode4.4.1 时找不到 /Developer/usr/lib/libprofile_rt.dylib 库。有没有更好的工具在 Xcode4.4.1 上运行代码覆盖?
寻找一些适用于 Xcode4.4.1 上的 mac 和 iOS 应用程序的代码覆盖工具
我一直在尝试在 Xcode4.4.1 上对 Mac 应用程序进行代码覆盖测试,该应用程序是 10.8 应用程序,因此该应用程序只能通过 Xcode4.4.1 构建和运行。但是使用 Xcode4.4.1 时找不到 /Developer/usr/lib/libprofile_rt.dylib 库。有没有更好的工具在 Xcode4.4.1 上运行代码覆盖?
寻找一些适用于 Xcode4.4.1 上的 mac 和 iOS 应用程序的代码覆盖工具
在 xCode 4.4.1 中运行项目时,您不需要包含 *libprofile_rt.dylib* 并使用 *-profile_rt* 标志(与 iOS 模拟器一起工作就像魅力一样)只需设置这些标志:
Generate Test Coverage Files: YES
Instrument Program Flow: YES
构建并运行。如果您运行应用程序的测试目标,*.gcda 文件会自动创建,因为测试的应用程序终止,如果运行常规目标,*.gcda 文件会在您明确终止应用程序时创建(另一种方法是设置UIApplicationExitsOnSuspend =在.plist 中是)
请注意,它在使用 xCode 4.4.1 创建的新项目上经过了很好的测试
您只需要在 Build Settings 中设置以下内容:
Generate Test Coverage Files: YES
Instrument Program Flow: YES
.gcda 文件只会在应用程序退出时输出,因此对于 iOS 构建,您应该在 Info.plist 中将 'UIApplicationExitsOnSuspend' 设置为 YES。
代码覆盖率文件将输出到 <派生数据>/Build/Intermediates/.build/<configuration>/<targetName>.build/Objects-normal/i386
似乎使用 LLVM 和 CoverStrory 的代码覆盖在 Xocde4.4.1 中被破坏了,
https://devforums.apple.com/message/717814#717814 - 苹果开发论坛中讨论此问题的链接。