简体   繁体   中英

iOS code coverage broken in Xcode 4.5?

I'm trying to set up code coverage in Xcode 4.5. To do so, I turned on Generate Test Coverage Files and Instrument Program Flow for debug setting. According to http://meandmark.com/blog/2012/08/xcode-4-generating-code-coverage-files-with-llvm/ that's all you need. However, now the linker complains that it can't find:

  • _llvm_gcda_emit_arcs
  • _llvm_gcda_emit_function
  • _llvm_gcda_end_file
  • _llvm_gcda_increment_indirect_counter
  • _llvm_gcda_start_file

I tried to find libprofile_rt.dylib, but it doesn't seem to exist anymore. What else is needed to generate code coverage files?

Under the target build setting (be sure to select all)

Set:

  • Apple LLVM complier
    • Instrument Program Flow: YES
    • Generate Test Coverage Files: YES

I also ran into these linker errors. I saw the errors using Xcode 4.2 and 4.3. I'm not sure if they still are there in 4.5.

To solve it I added this file from the llvm project to my unit test code project. To get it to build on my Mac I deleted the win32 and sys includes and replaced the #include "llvm/Support/DataTypes.h" include with #include "stdint.h" .

单元测试必须通过才能生成gcda文件。

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM