build.xml testng测试 并生成覆盖率报告
<project name="coverage" default="emma.reports">
<path id="emma.lib">
<pathelement location="WebRoot/WEB-INF/lib/emma.jar" />
<pathelement location="WebRoot/WEB-INF/lib/emma_ant.jar" />
</path>
<property file="build.properties" />
<property name="reports" location="reports" />
<property name="coverage" location="coverage" />
<property name="coverage-output" location="coverage-classes" />
<property name="output" location="classes" />
<fileset dir="${JAVA_HOME}" />
<fileset dir="${J2EE_HOME}" />
<taskdef resource="testngtasks" classpath="WebRoot/WEB-INF/lib/testng-5.11-jdk15.jar" />
<taskdef resource="emma_ant.properties" classpathref="emma.lib" />
<path id="cp">
<fileset dir="WebRoot/WEB-INF/lib">
<include name="*.jar" />
</fileset>
<fileset dir="${JAVA_HOME}">
<include name="**/*.jar" />
</fileset>
<fileset dir="${J2EE_HOME}">
<include name="**/*.jar" />
</fileset>
<pathelement location="${coverage-output}" />
<pathelement location="${output}" />
</path>
<target name="compile">
<mkdir dir="${output}" />
<mkdir dir="${coverage-output}" />
<javac source="1.5" srcdir="src" debug="true" destdir="${output}" classpathref="cp">
<include name="**/*.java" />
</javac>
</target>
<target name="emma" depends="compile">
<emma>
<instr instrpath="${output}"
destdir="${coverage-output}"
metadatafile="${coverage}/metadata.emma"
merge="true" />
</emma>
</target>
<target name="coverage-test" depends="emma">
<testng classpathref="cp">
<classfileset dir="${coverage-output}" includes="**/*.class" />
<jvmarg value="-Demma.coverage.out.file=${coverage}/coverage.emma" />
<jvmarg value="-Demma.coverage.out.merge=true" />
</testng>
</target>
<target name="emma.reports" depends="coverage-test">
<emma>
<report sourcepath="src">
<fileset dir="${coverage}">
<include name="*.emma" />
</fileset>
<txt outfile="${reports}/coverage.txt" />
<html outfile="${reports}/coverage.html" />
</report>
</emma>
</target>
<!--<target name="test" depends="compile">
<testng classpathref="cp" suitename="ant">
<classfileset dir="${output}" includes="**/*.class" />
</testng>
</target>-->
</project>
- 大小: 21.8 KB
分享到:
相关推荐
Emma可以与JUnit、TestNG等测试框架配合使用,提供类、方法、行级别的覆盖率报告,帮助识别未被测试代码的空白区域。 描述中的链接指向了一篇CSDN博客文章,虽然具体内容无法在当前环境下访问,但通常这类文章会...
在实际使用中,EMMA支持与JUnit、TestNG等单元测试框架无缝集成,用户只需简单配置即可开始进行覆盖率分析。"plugins"目录可能包含EMMA的各种插件,这些插件可能用于不同环境下的集成,如构建工具Maven、Gradle或IDE...
Emma是一个广泛使用的Java代码覆盖率工具,它提供了对Java应用程序单元测试的覆盖率分析。通过集成Ant构建工具,开发者能够方便地在他们的构建流程中插入代码覆盖率检查。 1. **Emma工具介绍** Emma是一个开源项目...
使用 Ant 运行需要编译文件 build.xml,这个文件配置了 xslt 和 emma,将 TestNG 原生的测试报告转换成更加清晰的报告,并且生成代码覆盖率报告。代码覆盖率是一个测量指标,它用于表示测试实际执行了多少代码。 本...
### 软件测试中的自动化测试与代码覆盖率 #### 第一章:软件测试中的自动化测试与代码覆盖率 **自动化测试**是指使用特定的工具或脚本来执行预定义的测试用例,以验证软件产品的功能是否符合预期的行为。这种方式...
- build.xml文件配置了TestNG和Emma,用于生成更清晰的测试报告和代码覆盖率报告。 - 代码覆盖率是衡量测试覆盖程度的指标,它帮助确认哪些代码已被测试。 2. **运行Ant任务**: - Ant脚本可以按照配置执行TestNG...
此外,JaCoCo还可以与其他测试框架(如JUnit、TestNG)结合,实时展示覆盖率。 4. **代码覆盖率的重要性**:高覆盖率并不意味着高质量的测试,但低覆盖率通常预示着可能存在未被发现的错误。通过分析覆盖率报告,...
1. **代码覆盖率测量**:Emma能够精确计算出被测试代码的行覆盖率、分支覆盖率等。 2. **支持多种测试框架**:包括JUnit、TestNG等流行的单元测试框架。 3. **与构建工具集成**:支持Ant、Maven等构建工具,方便在...
### 代码覆盖率工具EclEmma使用手册知识点梳理 ...通过以上知识点的梳理,读者可以更加系统地了解如何使用EclEmma进行代码覆盖率测试,并能够有效地将其应用于实际项目中,以提高软件产品的质量和可靠性。
4. **集成JUnit和TestNG**:EclEmma支持流行的Java测试框架JUnit和TestNG,使覆盖率分析与测试执行无缝结合。 5. **过滤和配置**:用户可以根据需要自定义覆盖率分析,例如忽略特定的包或类,或者设置覆盖阈值,以...
EMMA(Eclipse Metrics and More)是一个开源的Java覆盖率工具,用于测量单元测试的代码覆盖率。它提供了命令行接口和Ant任务,以便于集成到构建过程中。EMMA 2.1.5320是该工具的一个特定版本,据描述,这个版本在...
5. **命令行工具**:提供命令行接口,允许在没有IDE的环境中进行覆盖率测试。 6. **测试框架兼容性**:可能支持JUnit、TestNG等常见的Java测试框架,方便在测试执行后自动收集覆盖率数据。 7. **可扩展性**:可能...
9. **代码覆盖率**:Eclipse的插件如Emma或Cobertura可以提供代码覆盖率报告,显示测试覆盖了多少代码行,帮助开发者识别未被测试的代码区域。 10. **调试工具**:在测试过程中,Eclipse的调试器是必不可少的。它...
- **JUnit**:辅助测试人员进行代码覆盖率分析。 - **Emma**:执行测试并生成报告。 - **TestNG**:提供更高级别的测试支持。 #### 第3章 黑盒测试 - **黑盒测试概述**:黑盒测试不考虑软件的内部实现细节,...