本文转自http://blog.csdn.net/yuezu1026/article/details/4026733
Eclipse, ANT , Junit构建自动化单元测试
Ant是Java平台下非常棒的批处理命令执行程序,能非常方便地自动完成编译,测试,打包,部署等等一系列任务,大大提高开发效率。如果你现在还没有开始使用Ant,那就要赶快开始学习使用,使自己的开发水平上一个新台阶。
Eclipse中已经集成了Ant,我们可以直接在Eclipse中运行Ant。
以前面建立的Hello工程为例,创建以下目录结构:
新建一个build.xml,放在工程根目录下。build.xml定义了Ant要执行的批处理命令。虽然Ant也可以使用其它文件名,但是遵循标准能更使开发更规范,同时易于与别人交流。
通常,src存放Java源文件,classes存放编译后的class文件,lib存放编译和运行用到的所有jar文件,web存放JSP等web文件,dist存放打包后的jar文件,doc存放API文档。
然后在根目录下创建build.xml文件,输入以下内容:
<?xml version="1.0"?> <project name="Hello world" default="doc"> <!-- properies --> <property name="src.dir" value="src" /> <property name="report.dir" value="report" /> <property name="classes.dir" value="classes" /> <property name="lib.dir" value="lib" /> <property name="dist.dir" value="dist" /> <property name="doc.dir" value="doc"/> <!-- 定义classpath --> <path id="master-classpath"> <fileset file="${lib.dir}/*.jar" /> <pathelement path="${classes.dir}"/> </path> <!-- 初始化任务 --> <target name="init"> </target> <!-- 编译 --> <target name="compile" depends="init" description="compile the source files"> <mkdir dir="${classes.dir}"/> <javac srcdir="${src.dir}" destdir="${classes.dir}" target="1.4"> <classpath refid="master-classpath"/> </javac> </target> <!-- 测试 --> <target name="test" depends="compile" description="run junit test"> <mkdir dir="${report.dir}"/> <junit printsummary="on" haltonfailure="false" failureproperty="tests.failed" showoutput="true"> <classpath refid="master-classpath" /> <formatter type="plain"/> <batchtest todir="${report.dir}"> <fileset dir="${classes.dir}"> <include name="**/*Test.*"/> </fileset> </batchtest> </junit> <fail if="tests.failed"> *********************************************************** **** One or more tests failed! Check the output ... **** *********************************************************** </fail> </target> <!-- 打包成jar --> <target name="pack" depends="test" description="make .jar file"> <mkdir dir="${dist.dir}" /> <jar destfile="${dist.dir}/hello.jar" basedir="${classes.dir}"> <exclude name="**/*Test.*" /> <exclude name="**/Test*.*" /> </jar> </target> <!-- 输出api文档 --> <target name="doc" depends="pack" description="create api doc"> <mkdir dir="${doc.dir}" /> <javadoc destdir="${doc.dir}" author="true" version="true" use="true" windowtitle="Test API"> <packageset dir="${src.dir}" defaultexcludes="yes"> <include name="example/**" /> </packageset> <doctitle><![CDATA[<h1>Hello, test</h1>]]></doctitle> <bottom><![CDATA[<i>All Rights Reserved.</i>]]></bottom> <tag name="todo" scope="all" description="To do:" /> </javadoc> </target> </project> |
以上xml依次定义了init(初始化),compile(编译),test(测试),doc(生成文档),pack(打包)任务,可以作为模板。
选中Hello工程,然后选择“Project”,“Properties”,“Builders”,“New…”,选择“Ant Build”:
填入Name:Ant_Builder;Buildfile:build.xml;Base
Directory:${workspace_loc:/Hello}(按“Browse
Workspace”选择工程根目录),由于用到了junit.jar包,搜索Eclipse目录,找到junit.jar,把它复制到
Hello/lib目录下,并添加到Ant的Classpath中:
然后在Builder面板中钩上Ant_Build,去掉Java Builder:
再次编译,即可在控制台看到Ant的输出:
Buildfile: F:/eclipse-projects/Hello/build.xml init: compile: [mkdir] Created dir: F:/eclipse-projects/Hello/classes [javac] Compiling 2 source files to F:/eclipse-projects/Hello/classes test: [mkdir] Created dir: F:/eclipse-projects/Hello/report [junit] Running example.HelloTest [junit] Tests run: 1, Failures: 0, Errors: 0, Time elapsed: 0.02 sec pack: [mkdir] Created dir: F:/eclipse-projects/Hello/dist [jar] Building jar: F:/eclipse-projects/Hello/dist/hello.jar doc: [mkdir] Created dir: F:/eclipse-projects/Hello/doc [javadoc] Generating Javadoc [javadoc] Javadoc execution [javadoc] Loading source files for package example... [javadoc] Constructing Javadoc information... [javadoc] Standard Doclet version 1.4.2_04 [javadoc] Building tree for all the packages and classes... [javadoc] Building index for all the packages and classes... [javadoc] Building index for all classes... [javadoc] Generating F:/eclipse-projects/Hello/doc/stylesheet.css... [javadoc] Note: Custom tags that could override future standard tags: @todo. To avoid potential overrides, use at least one period character (.) in custom tag names. [javadoc] Note: Custom tags that were not seen: @todo BUILD SUCCESSFUL Total time: 11 seconds |
Ant依次执行初始化,编译,测试,打包,生成API文档一系列任务,极大地提高了开发效率。将来开发J2EE项目时,还可加入部署等
任务。并且,即使脱离了Eclipse环境,只要正确安装了Ant,配置好环境变量ANT_HOME=<Ant解压目
录>,Path=…;%ANT_HOME%/bin,在命令行提示符下切换到Hello目录,简单地键入ant即可。
发表评论
-
[转:]jQuery焦点中国地图
2013-04-17 11:05 1670转自:http://xiaoyaosr.blog.51cto ... -
一个轻量级的网页遮罩层jQuery插件
2012-11-14 17:48 6365一个轻量级的网页遮罩层jQuery插件 分 ... -
通过Spring Mail Api发送邮件
2012-11-14 17:47 1435通过Spring Mail Api发送邮件 ... -
jquery.validate
2012-11-09 16:51 1063jquery.validate 需要JQuery ... -
Hibernate commit() 和flush() 的区别(转)
2012-09-28 09:46 2626Hibernate commit() 和flush( ... -
maven3.0.2下settings.xml配置下(转)
2012-09-25 19:14 5928maven3.0.2下settings.xml配置下 ... -
hibernate中Qurey类的setDate方法自动截掉时分秒——setDate和setTimeStamp(转)
2012-09-03 10:30 3062原帖地址:http://www.iteye.com/to ... -
Maven3.0.3的环境变量配置
2012-07-19 11:22 3019转自http://hi.baidu.com/douxinchu ... -
转:org.apache.catalina.core.JreMemoryLeakPreventionListener解决办法
2012-07-18 15:38 5515转自:http://blog.csdn.net/ang ... -
eclipse中的java文件图标j成空心
2012-07-06 10:06 13532eclipse中的java文件图标j成空心 ... -
jQuery - Ajax - readyState获取请求操作的当前状态
2012-06-29 14:46 0jQuery - Ajax - readyState获取请求 ... -
Dom加载判断,兼容所有浏览器
2012-06-29 14:35 9177Dom加载判断,兼容所有浏览器 Dom 加载完毕,兼容 ... -
document.readyState几种状态及示例
2012-06-29 14:33 1968document.readySta ... -
DOM Ready 详解
2012-06-29 14:03 3081转自:http://www.cnblogs.com/zhang ... -
转】js实现另存为的方法
2012-06-29 13:42 2911转】js实现另存为的方法 本文转自http://www ... -
js添加和去除千分号
2012-06-22 11:41 2117利用js的replace方法和正则表达式实现 1 ... -
Hibernate的游离态与持久态转换(转)
2012-06-18 10:30 5203本文转自:http://blog.csdn.net/sdban ... -
maven继承parent,relativePath warn信息的解决办法
2012-06-11 17:12 25979转自:http://blog.sina.com.cn/s/bl ... -
使用Maven管理Eclipse Java项目
2012-06-11 17:10 1065转自:http://www.blogjava.net/lost ... -
The parent project must have a packaging type of POM
2012-06-11 17:09 25249The parent project must ha ...
相关推荐
本示例主要展示了如何在Eclipse集成开发环境中利用ANT构建工具和JUnit单元测试框架进行自动化测试。以下是关于这些知识点的详细说明: 1. **Eclipse IDE**:Eclipse是一款流行的开源Java开发环境,支持多种语言的...
在IT行业中,构建工具是开发过程中...在这个上下文中,我们主要关注的是如何在Eclipse中利用Ant进行项目构建,以及如何结合JUnit进行单元测试。通过熟练掌握这些技能,开发者能够更高效、更稳定地管理他们的Java项目。
在Eclipse中使用JUnit4进行单元测试是一种常见的软件开发实践,它可以帮助...而Ant则提供了自动化构建和测试的能力,使得整个流程更加流畅。通过阅读提供的博客文章,你可以深入了解如何在实际项目中实现这一过程。
标题 "JUnit Ant Eclipse, JUnitReport报告" 涉及到的是在软件开发过程中,使用JUnit进行单元测试,结合Ant构建工具生成测试报告,并在Eclipse集成开发环境中进行管理和查看的过程。这里我们将详细探讨这三个核心...
在自动化测试中,`junit`任务尤其关键,它可以自动化执行单元测试并生成测试报告。 4. **ANT脚本**:在`build.xml`文件中,开发者可以定义自己的任务集,比如创建一个特定的测试任务,该任务包含所有需要执行的测试...
在IT行业中,Ant和JUnit是两个非常重要的工具,它们分别用于构建管理和自动化测试。这篇讨论将专注于如何将JUnit集成到Ant构建系统中,以便在Java项目中实现高效的自动化测试。 Ant是一个由Apache软件基金会开发的...
本文旨在探讨如何利用Selenium、JUnit和Hudson构建一个自动化测试框架。Selenium是一款强大的开源Web功能测试工具,支持多种编程语言,如Ruby、Python、Java、Perl和C#。它能直接在浏览器中运行测试,模拟真实用户的...
**JUnit与Ant**:Ant是一个流行的Java构建工具,它可以用来自动化单元测试的过程。 - **Ant配置文件**:通过编辑`build.xml`文件,定义JUnit任务来运行测试。 - **自动化测试**:利用Ant可以定时执行测试,也可以在...
2. Ant:一个基于 Java 的构建工具,用于自动化构建和测试过程。 3. JUnit:可以从官方网站 http://www.junit.org/ 获取最新版本。 创建 JUnit 测试项目: 1. 创建一个新的 Java 工程,例如 "coolJUnit"。 2. 在 ...
### JUnit和单元测试简介 #### 一、基础知识与概念 **1.1 白盒测试与回归测试** - **白盒测试**:这是一种测试策略,其中测试人员完全了解被测对象的内部工作原理和逻辑结构。这有助于深入检查代码的具体实现细节...
2. **Ant**:Ant是一款基于Java的开源构建工具,可以用来自动化执行单元测试。虽然Eclipse中已经集成了Ant,但在撰写文档时所使用的Ant版本可能过低,无法很好地支持JUnit4,因此可能需要下载更高版本的Ant。 3. **...
总结来说,Junit和Ant的结合使用,使得单元测试更加自动化和高效。通过Ant的构建脚本,开发者可以轻松地集成Junit,对项目进行全方位的测试,确保代码的质量和稳定性。这不仅是提升开发效率的利器,也是保证软件工程...