`

我写的ant编译、打包、测试、测试报告生成和邮件发送模板

阅读更多
js 代码
 
  1. <?xml version="1.0"?>   
  2. <project name="springproj" basedir="." default="mail">   
  3.     <property name="pro.name" value="springproj" />   
  4.     <property name="pro.author" value="Danlley Wei" />   
  5.     <property name="src.dir" value="src/main/java" />   
  6.     <property name="pro.web.root" value="war" />   
  7.     <property name="pro.web.source" value="${pro.web.root}/WEB-INF" />   
  8.     <property name="pro.build.path" value="${pro.web.source}/classes" />   
  9.     <property name="user.dir" value="${pro.build.path}" />   
  10.     <target name="mail" depends="mkzip">   
  11.        <mail mailhost="smtp.126.com" mailport="25" subject="The Build Test" user="用户名" password="邮箱密码">   
  12.            <from address="发送地址" name="Danlley Wei" />   
  13.            <fileset dir="report/html">   
  14.               <include name="**/test-result${ant.project.name}.zip" />   
  15.            </fileset>   
  16.            <to address="邮件接收地址" name="Danlley Wei" />   
  17.            <message>The ${pro.name}--${pro.author} has been tested ! </message>   
  18.        </mail>   
  19.     </target>   
  20.     <target name="mkzip" depends="report">   
  21.         <jar destfile="report/html/test-result${ant.project.name}.zip">   
  22.            <fileset dir="report/html">   
  23.               <include name="**/*.html" />   
  24.               <include name="**/*.css" />   
  25.               <include name="**/*.txt" />   
  26.            </fileset>   
  27.         </jar>   
  28.     </target>   
  29.     <target name="report" depends="junit">   
  30.        <junitreport id="myJUnitReport" taskname="reported" todir="report" description="Junit Report">   
  31.            <fileset dir="report">   
  32.               <include name="TEST-*.xml" />   
  33.            </fileset>   
  34.            <report todir="report/html" />   
  35.        </junitreport>   
  36.     </target>   
  37.     <target name="junit" depends="build">   
  38.        <mkdir dir="report/html" />   
  39.        <junit printsummary="yes" haltonerror="yes" haltonfailure="yes" fork="yes">   
  40.            <formatter type="plain" usefile="false" />   
  41.            <formatter type="xml" />   
  42.            <test name="org.danlley.hibernate.dao.DeptDAOImplTest" todir="report" />   
  43.            <classpath refid="master-classpath" />   
  44.        </junit>   
  45.     </target>   
  46.     <target name="build" depends="prepare">   
  47.        <javac destdir="${pro.build.path}" target="1.5">   
  48.            <src path="${src.dir}" />   
  49.            <classpath refid="master-classpath" />   
  50.        </javac>   
  51.        <javac destdir="${pro.build.path}" target="1.5">   
  52.            <src path="src/main/test" />   
  53.            <classpath refid="master-classpath" />   
  54.        </javac>   
  55.     </target>   
  56.     <target name="prepare" depends="clean">   
  57.        <copy todir="${pro.build.path}">   
  58.            <fileset dir="${src.dir}">   
  59.               <include name="**/*.properties" />   
  60.               <include name="**/*.xml" />   
  61.            </fileset>   
  62.        </copy>   
  63.     </target>   
  64.     <target name="clean">   
  65.        <delete>   
  66.            <fileset dir="${pro.build.path}">   
  67.               <include name="**/*.*" />   
  68.            </fileset>   
  69.            <fileset dir="report">   
  70.               <include name="**/*.*" />   
  71.            </fileset>   
  72.        </delete>   
  73.     </target>   
  74.     <path id="master-classpath">   
  75.        <fileset dir="lib">   
  76.            <include name="*.jar" />   
  77.        </fileset>   
  78.        <pathelement path="${pro.build.path}" />   
  79.     </path>   
  80. </project>  

 

target依赖关系:
mail→mkzip→report→junit→build→prepare→clean

工程classpath:master-classpath

clean节点:
删除测试和编译过程中生成的所有文件

prepare节点:
将工程编译打包所需资源文件全部拷贝到编译路径下

build节点:
生成工程源文件和测试代码源文件的二进制版本

junit节点:
运行测试用例

report节点:
生成测试报告

mkzip节点:
将生成的测试报告以zip格式进行打包

mail节点:
将测试结果发送到开发小组邮箱 

 

1. 我在模板 中使用的126邮箱,如果你的邮箱是新申请的126邮箱,上述模板可能没办法发送你的邮件,原因是126邮箱对于新申请的用户暂时不开通smtp和pop3服务

2.ant并不会自带安装发送邮件所需相关资源包,因此需要我们手动到sun官方网站下载,然后把资源包放到ant的lib下面,我的位置是:D:\apache-ant-1.7.0\lib

可以从下面地址下载ant发邮件所需的两个资源(mail.jar和activation.jar):
http://java.sun.com/products/javamail
http://java.sun.com/products/javabeans/glasgow/jaf.html 

 

分享到:
评论

相关推荐

    Jmeter+ant实现测试报告build.xml和报告模板jmeter-results-newreport.xsl

    在描述中提到,`build.xml`实现了测试报告和邮件功能,这意味着它可能包含JMeter测试执行、结果解析、报告生成以及邮件发送的相关配置。 4. **报告模板优化**:在接口测试过程中,生成可读性高、信息丰富的测试报告...

    jmeter+ant的接口测试报告模板

    下面,我们将深入探讨如何使用JMeter和Ant进行接口测试,并理解“jmeter+ant的接口测试报告模板”。 1. **Apache JMeter** - **简介**:JMeter是一款完全基于Java的开放源代码应用,主要用于负载和性能测试,但也...

    用ant编译J2ME代码的build.xml模板

    在“用ant编译J2ME代码的build.xml模板”中,我们可能会看到类似`clean`、`compile`、`jar`这样的目标,分别对应清理、编译和打包的操作。 `clean`目标通常用于删除先前生成的临时或输出文件,以确保每次构建都是...

    使用ant打包android

    在Android开发过程中,Ant是一个非常重要的工具,它是一个开源的Java构建系统,广泛用于自动化编译、测试和部署Java应用程序,包括Android应用。本篇文章将详细介绍如何使用Ant来打包Android应用,以及涉及到的相关...

    Jenkins+Ant+Jmeter发送邮件,需要的jar包

    6. **测试执行和邮件发送**:运行Jenkins任务,Ant会执行JMeter测试,完成后生成测试报告,然后调用邮件发送逻辑,将报告发送到指定的收件人。 通过以上步骤,我们可以在Jenkins环境中实现自动化接口测试并利用...

    jmeter+ant自动话及优化报告

    - **构建工具**:Ant使用XML来描述构建过程,包括编译、打包、测试等任务,易于理解和维护。 - **与JMeter的集成**:通过`ant-jmeter`库,Ant可以调用JMeter命令行工具执行测试计划,并收集结果。 3. **json-lib-...

    android 使用ant自动打包apk

    可以参考Android SDK提供的模板,如`android-sdk/tools/ant/build.xml`。 - 文件中主要包括`&lt;project&gt;`、`&lt;target&gt;`和各种`&lt;task&gt;`元素,这些元素定义了构建的各个步骤。 2. **配置project属性** - 在`build.xml`...

    通过ant生成doc和zip

    标题中的“通过ant生成doc和zip”指的是使用Apache Ant工具来构建Java项目的文档(Javadoc)并将其打包成ZIP文件的过程。Apache Ant是一个基于Java的构建工具,它提供了XML格式的构建文件,允许开发者定义、组织和...

    jenkins+ant+jmeter生成html资源

    在“build.xml”文件中,会包含编译、打包、测试等步骤的指令,其中包括了如何使用JMeter的结果XML文件生成HTML报告的配置。 Jenkins则是一个持续集成服务器,它可以自动化各种任务,包括构建、测试和部署软件。在...

    ant的build.xml模板

    在软件开发领域,构建工具是不可或缺的一部分,它帮助开发者自动化地完成编译、测试、打包等任务。Apache Ant作为Java领域的一款经典构建工具,以其灵活性和强大的功能深受广大开发者的喜爱。本文将深入解析Ant的`...

    apache-ant-1.10.5.rar

    Apache Ant是Java开发中的一个构建工具,用于自动化项目构建过程,比如编译、打包、测试等任务。在标题中提到的"apache-ant-1.10.5.rar"是一个包含Ant 1.10.5版本的压缩文件。这个版本的Ant是在2019年发布的一个稳定...

    ant打包apk文件

    在整个过程中,`Ant`扮演着协调者的角色,按照`build.xml`中的指令执行一系列步骤,包括编译源代码,生成资源文件,打包成APK,签署APK以及进行优化。虽然现代Android开发更多地转向了Gradle作为构建系统,但了解和...

    jax生成client代码的Ant配置文件模板

    Ant通过XML文件定义任务,这些文件通常称为构建文件,其中包含了编译、打包、测试等步骤的描述。 在提供的Ant配置文件模板中,我们看到以下关键元素: 1. `&lt;project&gt;` 元素:这是Ant构建文件的根元素,定义了项目...

    ant脚本通用模板 ant脚本通用模板

    ### ant脚本通用模板知识点详解 #### 一、Ant简介 Apache Ant 是一个Java环境下的构建工具,主要用于编译、测试、部署等任务的自动化执行。Ant使用XML格式来描述构建过程,使得整个构建流程清晰易懂。对于中小型...

    ant简介及实例pdf

    你可以配置测试类、报告生成和失败处理等选项。 4. **打包**:使用`&lt;jar&gt;`任务将编译后的类文件打包成JAR文件,便于分发和部署。 5. **部署**:将JAR文件和其他资源复制到目标服务器或目录,如使用`&lt;copy&gt;`任务。 6....

    Middlegen插件(搭配Ant)自动生成Hbm文件

    Ant是Apache的一款开源构建工具,它可以读取XML格式的构建文件,并按照其中的指令执行编译、打包、测试等任务。通过Ant,我们可以构建一个自动化的工作流程,使数据库表、POJOs和Hbm文件之间的转换变得轻而易举。 ...

    Fmpp+Ant生成类文件

    Ant的任务系统使其可以执行各种构建任务,包括编译、测试、打包、部署等。 在“Fmpp+Ant生成类文件”的场景中,我们首先需要在Ant构建脚本中引入Fmpp库。这可以通过在`build.xml`文件中添加对应的`&lt;taskdef&gt;`标签...

    unity3d android 使用ant打包批处理.

    该文件将定义如何编译和打包你的项目。你可以参考Unity官方文档或者网络上的示例模板来编写。 2. **配置Project.properties**:在`Assets/Plugins/Android`目录下创建或修改`project.properties`文件,设置Android ...

    Ant权威指南(ant 学习)

    Ant与JUnit和其他测试框架良好集成,可以方便地执行单元测试,并生成测试报告。 通过学习《Ant权威指南》,开发者可以全面掌握Ant的使用,提升构建效率,确保项目的稳定和可维护性。无论你是初学者还是经验丰富的...

    ant + freemarker + excel解析

    通过Ant,开发者可以自动化编译、打包、测试和部署Java项目,极大地提高了工作效率。 接着,FreeMarker是一个开源的Java模板引擎,用于生成动态Web内容。它与模型数据分离,允许开发者编写HTML或其他格式的模板,...

Global site tag (gtag.js) - Google Analytics