`
laorer
  • 浏览: 433682 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

<转>Ant开发、测试、部署实例

    博客分类:
  • j2EE
阅读更多

前 言

<o:p>http://www.dingl.com/view.shtml?xh=229</o:p>

由于现在公司进行Unit Test Case的整理阶段,所以抽空对Ant和Junit技术进行了一下了解,以下是集合了众家所长之精华(考虑到是按我的思路总结的,也许不能完全表述原作者的思路,所以在参考中我把所有参考过的文章网址或书籍都罗列了出来,大家有时间不妨去看看原文)。<o:p></o:p>

如果对Ant部分参数不明白的话,请参看《Ant理论篇》系列或ant自带的文档。<o:p></o:p>

<o:p> </o:p>

1.1 通过Antcopt task将当前目录下最近更新的文件(按系统时间来区分)文件提交至指定目录<o:p></o:p>

1> 前提:在D盘下创建两个文件夹test1和test2,并在test1中创建build.xml文件,内容如下:<o:p></o:p>

<?xml version="1.0"?><o:p></o:p>

<project name="test" default="upload"><o:p></o:p>

<o:p> </o:p>

   <!-- 设置提交的根路径以及提交目录属性 --><o:p></o:p>

   <property name="dest_drive" value="D:\" /><o:p></o:p>

   <property name="dest_dir" value="${dest_drive}\test2\test" /><o:p></o:p>

   <o:p></o:p>

   <!-- 如果没有提交目录的话,创建提交目录 --><o:p></o:p>

   <target name="create_dir"><o:p></o:p>

       <mkdir dir="${dest_dir}" /><o:p></o:p>

   </target><o:p></o:p>

   <o:p></o:p>

   <!-- 通过copy task提交当前目录下除build.xml外所有非临时文件 --><o:p></o:p>

   <target name="upload" depends="create_dir"><o:p></o:p>

       <copy todir="${dest_dir}"><o:p></o:p>

          <fileset dir="."><o:p></o:p>

             <exclude name="**\build.xml"/><o:p></o:p>

          </fileset><o:p></o:p>

       </copy><o:p></o:p>

   </target><o:p></o:p>

<o:p> </o:p>

</project><o:p></o:p>

2>进入DOS命令行状态,运行D:\test1>ant。进入test2中进行检查,看是否已经建立好了test子目录并且将test1中的文件除build.xml外都已经提交过来。如果这时你再运行ant,会发现其没有任何操作提示,因为已经没有新文件需要提交了。<o:p></o:p>

注:有兴趣的朋友不妨将其中一个文件更新一下再执行一次,你会发现upload:下会出现新的信息。

 

1.2 用Ant开发java程序,以HelloWord为例
1> 本次实例的目录结构:
D:\test 主目录
 \src  源程序目录
 \classes 编译后的class文件目录
首先在D盘创建test目录和src子目录。
2> 在src子目录下创建HelloWord.java文件,内容如下:
public class HelloWord
{
    public static void main(String args[])
    {
        System.out.println("Hello World!");
    }
}
3> 在test主目录下创建build.xml文件,内容如下:
<?xml version="1.0"?>
<project default="build" basedir=".">

   <property name="appname" value="HelloWord" />
   <property name="base" value="D:\test" />
   <property name="src" value="src" />
   <property name="build" value="classes" />
   <property name="myclasspath" value="${base}\${build}" />

   <target name="build">
       <mkdir dir="${build}" />
       <javac srcdir="${src}" destdir="${build}">
           <include name="**/*.java" />
       </javac>
   </target>

   <target name="run" depends="build">
       <exec executable="java">
           <arg line=" -classpath ${myclasspath} ${appname}" />
       </exec>
   </target>

   <target name="clean">
       <delete includeEmptyDirs="true">
           <fileset dir="${build}" />
       </delete>
   </target>

</project>
为了提高程序的可移植性,我们将property分离出来组成build.properties文件。新的build.xml文件和build.properties文件内容如下:
build.properties文件:
appname=HelloWord
src=src
build=classes
myclasspath=${basedir}\\${build}
build.xml文件(property部分通过file调用build.properties即可):
<?xml version="1.0"?>
<project default="build" basedir=".">
 
   <property file="build.properties" />

   <target name="build">
       <mkdir dir="${build}" />
       <javac srcdir="${src}" destdir="${build}">
           <include name="**/*.java" />
       </javac>
   </target>

   <target name="run" depends="build">
       <exec executable="java">
           <arg line=" -classpath ${myclasspath} ${appname}" />
       </exec>
   </target>

   <target name="clean">
       <delete includeEmptyDirs="true">
           <fileset dir="${build}" />
       </delete>
   </target>

</project>
4> 在test目录下运行ant查看执行结果。
再运行ant run和ant clean看看会怎么样,:)

1.3 ant结合junit进行软件自动测试<o:p></o:p>

1> 用ant结合junit启动基本编译和测试的自动过程如下:<o:p></o:p>

★ 执行 JUnit 测试<o:p></o:p>

★ 捕获测试结果,将结果记录到 XML 文件或其它格式的文件<o:p></o:p>

★ 将结果转化为基于 XSL 格式的测试报告<o:p></o:p>

★ 将这个报告转化为 HTML 格式<o:p></o:p>

★ 用电子邮件发送报告<o:p></o:p>

     一旦捕获结果,就可以使用XML格式化器将每个测试套件运行的故障和错误数,连同软件包和类名还有测试套件的执行时间一起引入。对于每个测试套件,都有以下信息被捕获:<o:p></o:p>

☆ 测试案例的名称 <o:p></o:p>

☆ 执行的持续时间<o:p></o:p>

☆ 故障或错误的类型(如果适用)<o:p></o:p>

☆ 任何故障或错误的详细信息<o:p></o:p>

2> 本次实例的目录结构:<o:p></o:p>

D:\car   主目录<o:p></o:p>

     \src     源程序目录<o:p></o:p>

     \classes 编译后的class文件目录<o:p></o:p>

     \etc     其他<o:p></o:p>

         \xsl     XSL文件目录<o:p></o:p>

首先在D盘创建car目录、src子目录和etc子目录,并从%ANT_HOME%\etc下拷贝junit-noframes.xsl文件至D:\car\etc\xsl子目录下。<o:p></o:p>

3> 从http://download.sourceforge.net/junit/junit3.8.zip下载,解压至D盘,将其目录下的junit.jar文件拷贝至%ANT_HOME%\lib目录下。<o:p></o:p>

4> 在src子目录下新建Car.java以及testCar.java文件。<o:p></o:p>

Car.java的内容如下:

//将要被测试的类 <o:p></o:p>

public class Car<o:p></o:p>

{ <o:p></o:p>

    public int getWheels() <o:p></o:p>

    { <o:p></o:p>

        return 3; <o:p></o:p>

    } <o:p></o:p>

}<o:p></o:p>

testCar.java的内容如下:<o:p></o:p>

//执行测试的类<o:p></o:p>

import junit.framework.*; <o:p></o:p>

<o:p> </o:p>

public class testCar extends TestCase <o:p></o:p>

{ <o:p></o:p>

    protected int expectedWheels; <o:p></o:p>

    protected Car myCar; <o:p></o:p>

    <o:p></o:p>

    public testCar(String name) <o:p></o:p>

    { <o:p></o:p>

分享到:
评论

相关推荐

    maven多环境部署pom文件实例

    本文将深入探讨如何使用Maven的POM(Project Object Model)文件实现多环境部署,使得代码能够在开发、测试和生产等不同环境中无缝切换。 首先,让我们理解什么是POM文件。POM是Maven的核心概念,它是一个XML文件,...

    ant 版本制作实例_uniportal 和ant配置应用实例

    Ant是Java开发中广泛使用的自动化构建工具,它基于XML来定义任务,允许开发者编译、打包、测试和部署应用程序。在“uniportal和ant配置应用实例”中,uniportal可能是一个Web应用程序项目,而这个实例则是关于如何...

    Ant打包实例

    3. **测试**:如果项目有单元测试,可以使用JUnit或其他测试框架,Ant提供了`&lt;junit&gt;`任务来运行测试。 ```xml &lt;target name="test" depends="compile"&gt; &lt;mkdir dir="${build.dir}/test-reports"/&gt; &lt;junit ...

    ant入门小实例练习

    Ant是Apache软件基金会的一个开源项目,它是一个Java构建工具,主要负责自动化构建Java应用程序,包括编译、打包、测试和部署等任务。在Java开发环境中,Ant替代了传统的Makefile,提供了一种跨平台的解决方案。 在...

    Ant实例 web工程部署

    【Ant实例 web工程部署】与【Ant】标签相关的知识点: Ant是一个开源的Java构建工具,它简化了构建和部署Java应用程序的过程。在Ant出现之前,Java应用的构建通常依赖于平台特定的脚本、Makefile、多种IDE以及手动...

    Ant配置实例[文].pdf

    它被广泛用于Java应用程序的构建、测试和部署,尤其是与Maven和Gradle一起,构成了Java开发中的主要构建工具。本文将通过一个实际的Ant配置案例,深入解析Ant在软件开发中的应用。 首先,`&lt;project&gt;`标签是Ant配置...

    ant简介及实例pdf

    Ant是Apache软件基金会下的一个Java构建工具,它以其XML格式的构建文件闻名,用于自动化Java项目的构建、编译、测试和部署过程。Ant的设计理念是简单、可扩展和可配置,使得开发者能够根据项目需求定制构建流程。在...

    ant 学习 笔记 一个简单的java 编译部署实例

    根据提供的文件信息,这里将深入解析“ant学习笔记:一个简单的java编译部署实例”,涵盖标题、描述、标签以及部分内容中提及的关键知识点。 ### Apache Ant简介 Apache Ant是一款开源的Java环境下的自动化构建...

    ant使用最简单的实例

    Apache Ant 是一个由Java开发的开源构建工具,它被广泛用于Java项目的构建和自动化任务,如编译、打包、测试和部署。Ant以其XML为基础的构建文件(build.xml)著称,这些文件定义了构建过程的步骤和依赖关系。在这个...

    Ant入门实例

    此外,Ant还可以生成Javadoc文档,使用&lt;copy&gt;或&lt;move&gt;任务将文件部署到服务器。 **持续集成** 在持续集成环境中,Ant常与Jenkins、 Hudson等工具结合使用,自动执行构建和测试任务。这提高了开发效率,确保每次...

    ant 简单实例

    尽管这个例子只是一个简单的实例,但Ant的强大之处在于其可扩展性,可以处理复杂的构建需求,包括依赖管理、测试、部署等多个环节。通过学习和理解Ant的基本用法,开发者可以更高效地管理Java项目,提高开发效率。

    ant 开发及整合 源码 实例

    Apache Ant 是一个由Java编写的开源构建工具,它在软件开发过程中扮演着自动化任务执行的角色,比如编译、打包、测试和部署等。Ant 的核心理念是基于XML的构建文件(通常命名为build.xml),其中定义了一系列的任务...

    Apache Ant 实例介绍

    Ant 使用XML格式的构建文件(通常命名为build.xml),来定义任务和依赖关系,使得开发者可以自动化编译、打包、测试和部署等过程。在本文中,我们将深入探讨Apache Ant的基本概念、工作原理以及如何通过实例进行操作...

    ant实例教程

    Ant最初由Jakarta项目开发,设计目标是替代Makefile,提供一种更为Java友好的方式来管理项目构建。它的主要特点是基于XML的构建文件(build.xml),通过定义任务(tasks)和目标(targets)来实现编译、测试、打包等...

    apache ant使用例子

    Ant以其灵活性和可扩展性而受到开发者喜爱,它可以自动化编译、打包、测试等Java应用程序开发过程中的诸多步骤。 在"apache ant使用例子"中,我们可以通过一个名为"HelloAnt"的MyEclipse工程实例来学习如何使用Ant...

    ant入门资料.快速上手

    Apache Ant 是一个Java环境下的构建工具,主要用于自动化编译、测试、部署等任务。它采用XML格式来定义构建过程,使开发者能够通过简单的配置文件(通常是`build.xml`)来管理项目的构建流程。 **1.2 什么是构建** ...

    Ant基本使用指南--从入门到精通

    Ant 支持通过 `&lt;target&gt;` 的 `if` 和 `unless` 属性来实现条件执行。这些属性允许根据特定条件来决定是否执行某个目标。 示例: ```xml &lt;target name="clean"&gt; &lt;delete dir="${build.dir}" /&gt; &lt;/target&gt; &lt;target...

    项目Ant配置实例一次下载各处使用

    在IT行业中,构建工具是项目开发过程中的重要组成部分,它们帮助开发者自动化地编译、测试、打包和部署软件。Ant是Apache软件基金会的一个开源项目,它是一个基于Java的构建工具,广泛应用于Java项目的构建和管理。...

Global site tag (gtag.js) - Google Analytics