Huu*_*pke 7 ant android code-coverage emma filter
我知道在构建我的android测试项目时如何在ant中使用emma但是在使用SDK时我找不到有关如何使用过滤器的任何提示.emma网站在自己调用emma时解释了它,但在Android SDK构建文件中,emma未在ant文件或命令行中调用,因此我无法添加过滤器选项.
任何建议?
Ram*_*mps 10
从SDK Tools r18开始,您只需添加即可
emma.filter=-com.your.excluded.package.*
Run Code Online (Sandbox Code Playgroud)
到你的项目的ant.properties(而不是测试项目)
这取决于您使用的SDK版本,特别是<android-sdk>/tools/ant
目录中包含的构建文件.
从SDK r18及更高版本开始,就像ant.properties
在目标(非测试)项目的文件中添加属性一样简单.所以例如使用
emma.filter=-*.test.*
Run Code Online (Sandbox Code Playgroud)
从测试包中排除所有类.您可以在emma文档中找到emma过滤器语法.
这有一个问题.它涉及以下内容:
-emma-instrument
从导入的android构建文件中删除目标来修改构建文件(您应该在运行时获得的标准项目构建文件中找到此方法的说明android create/update project
)根据链接的问题修改目标,它看起来像:
<target name="-emma-instrument" depends="compile">
<echo>Instrumenting classes from ${out.absolute.dir}/classes...</echo>
<!-- It only instruments class files, not any external libs -->
<emma enabled="true">
<instr verbosity="trace1"
mode="overwrite"
instrpath="${out.absolute.dir}/classes"
outdir="${out.absolute.dir}/classes">
<filter excludes="*.R,*.R$$*,${emma.exclusion.pattern}" />
</instr>
<!-- TODO: exclusion filters on R*.class and allowing custom exclusion from
user defined file -->
</emma>
</target>
Run Code Online (Sandbox Code Playgroud)emma.exclusion.pattern
来提供自己的排除对我来说,这就像SDK工具r13上的魅力一样.
归档时间: |
|
查看次数: |
2786 次 |
最近记录: |