【问题标题】:IOS project code coverage source file is relative pathIOS项目代码覆盖源文件是相对路径
【发布时间】:2013-10-24 03:57:22
【问题描述】:

我在运行我的iphone应用程序后生成了.gcno和.gcda文件。然后我使用封面故事查看覆盖率。但是封面故事无法打开源文件,我发现源路径是相对路径,不是完整路径。我能看到的全是 /EOF/ 在屏幕上。 对我来说奇怪的是,由于这个路径问题,只有一些文件无法打开。大部分都是完整路径,封面故事可以成功打开。无法附上截图

如何在 CoverStory 中显示正确的路径名称?

【问题讨论】:

    标签: ios xcode code-coverage lcov


    【解决方案1】:

    我建议使用 lcov 生成 HTML 报告,它可以让您规范化目录名称。

    使用 HTML 报告的其他好处是:

    • 桌面计算机和持续集成构建服务器都提供覆盖信息。

    安装 lcov

    • 使用 Homebrew 或 MacPorts

    例子:

    brew install lcov
    

    首先生成数据文件

    #!/bin/bash
    set -e # fail script if any commands fail
    ${gen.info} ${temp.dir}/coverage-data/*.gcno --no-recursion --output-filename \
    ${temp.dir}/${module.name}-temp.info
    #Remove symbols we're not interested in.
    ${lcov} -r ${temp.dir}/${module.name}-temp.info > ${temp.dir}/${module.name}.info
    

    现在生成 HTML 报告

    #!/bin/bash
    set -e # fail script if any commands fail
    
    ${gen.html} --no-function-coverage --no-branch-coverage -o ${coverage.reports.dir} \
    --prefix ${basedir} ${temp.dir}/${module.name}.info
    

    如果您有兴趣,我有一个生成 HTML 报告 here 的构建脚本。示例报告:http://jasperblues.github.io/Typhoon/coverage/index.html

    【讨论】:

    • 嗨,贾斯珀。我使用 lcov 工具生成 .gcda 和 .gcno 文件一起生成的 html 报告,但我发现报告遗漏了很多 .m 文件,只列出了它的 .h 文件。我遗漏了什么吗?
    • 是的,.m 文件应该在里面。看到我链接到的示例报告了吗? . .当您尝试 CoverStory 时 .m 文件在哪里?
    • 是的,我可以看到带有封面故事的 .m 和 .h 文件。不知道为什么在报告中遗漏了一些 .m 信息。
    猜你喜欢
    • 1970-01-01
    • 2012-01-09
    • 2011-02-26
    • 1970-01-01
    • 1970-01-01
    • 2020-01-03
    • 2016-08-22
    • 1970-01-01
    • 2014-08-17
    相关资源
    最近更新 更多