gpt4 book ai didi

Android 外部 API 覆盖范围不会到来

转载 作者:太空宇宙 更新时间:2023-11-03 10:24:58 25 4
gpt4 key购买 nike

从过去 1 个月开始,我一直在尝试推断我的 Android 项目的代码覆盖率报告,其中包括外部 Jar。(我在 ADT20 上运行)。每当我运行时

ant emma debug install test

它显示我的 Android 项目 100% 的覆盖率,但覆盖率报告不包含我的外部 Jar 的包和类。任何人都可以帮助我通过 emma ant build 或任何 Android 代码覆盖率工具获取外部 Jar 中的包和类的覆盖率报告,从而完成我的工作。

谢谢

最佳答案

最新的 SDK 通过将 emma 放在构建的前面来使用 emma:

ant emma debug install
ant emma debug install test

第一个是从您的项目主管运行的,第二个是测试目录。这样做将生成完整的覆盖率报告。

有关更多信息,请参阅此 link

ADT r20-preview 通过提供对测试项目及其库项目的完整类路径的访问权限解决了这个问题:

http://tools.android.com/download/adt-20-preview

这将为您提供有关您的库项目的代码覆盖率报告,但您还必须对 build.xml 的测试目标进行一些修改以附加源文件。

参见 this Attach Android library将项目源代码提交给 Emma 报告(ant、emma),以获取有关如何暂时将 emma 测试覆盖率纳入您的图书馆项目的更多信息。

example-build.xml:

<emma>
<!-- Grantland: Attach Android library project sources to the emma report -->
<report sourcepath="${tested.project.absolute.dir}/${source.dir};${tested.android.library.source.dir}"
verbosity="${verbosity}">
<!-- <report sourcepath="${tested.project.absolute.dir}/${source.dir}"
verbosity="${verbosity}"> -->
<!-- TODO: report.dir or something like should be introduced if necessary -->
<infileset dir=".">
<include name="coverage.ec" />
<include name="coverage.em" />
</infileset>
<!-- TODO: reports in other, indicated by user formats -->
<html outfile="coverage.html" />
</report>
</emma>

Ant 属性:

这可以是一个以分号分隔的目录列表

tested.android.library.source.dir=../library/src;etc

关于Android 外部 API 覆盖范围不会到来,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13716309/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com