【问题标题】:Ant Build Test TargetAnt 构建测试目标
【发布时间】:2014-05-24 22:53:52
【问题描述】:

我是第一次使用 ant,阅读了很多教程和示例,但仍然无法使其正常工作。每个目标都有效,但通过测试我得到 “测试 TestMaze 失败(崩溃)。”
我试图改变很多东西(使用很多例子),仍然没有。谁能告诉我问题出在哪里?非常感谢。

<?xml version="1.0"?>
<project name="Maze" default="default" basedir=".">


  <property name="src.dir" location="src" />
  <property name="build.dir" location="build" />
  <property name="dist.dir" location="dest-server" />
  <property name="test.dir" location="test" />
  <property name="test.report.dir" location="testreport" />


  <target name="clean">
    <delete dir="${build.dir}" />
    <delete dir="${dist.dir}" />
    <delete dir="${test.report.dir}" />
  </target>

  <path id="junit.class.path">
    <pathelement location="lib/junit-4.10.jar" />
    <pathelement location="${build.dir}" />
  </path>


  <target name="compile" depends="clean">
        <mkdir dir="${build.dir}" />
        <mkdir dir="${dist.dir}" />
    <javac srcdir="${src.dir}" destdir="${build.dir}" />
    <javac srcdir="${test.dir}" destdir="${build.dir}">
     <classpath refid="junit.class.path" />
    </javac>
    <jar destfile="${dist.dir}\Maze.jar" basedir="${build.dir}">
       <manifest>
           <attribute name="Main-Class" value="maze.tape.Commands" />
       </manifest>
    </jar>

  </target>

  <target name="test" depends="compile">
    <junit printsummary="on" fork="true" haltonfailure="yes">
        <classpath refid="junit.class.path" />
        <formatter type="xml" />
        <batchtest todir="${test.report.dir}">
            <fileset dir="${test.dir}">
                <include name="**/*Test*.java" />
            </fileset>
        </batchtest>
    </junit>
  </target>

  <target name="run" depends="compile">
    <java jar="dest-server/Maze.jar" fork="true"/>
  </target>

</project> 

【问题讨论】:

  • 我知道它不能解决您的直接问题,但是您已将构建脚本的默认目标设置为“默认”,并且您的脚本中没有定义名为“默认”的目标。您可能想将default="default" 更改为default="run"

标签: testing ant junit build


【解决方案1】:

您的测试目标正在生成一个 xml 文件,因为您正在使用:

<formatter type="xml" /> 

不使用usefile属性时,会设置默认值,此时为“true”。

您可以将属性设置为false,输出将显示在控制台中。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2011-11-16
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2010-10-06
    • 2023-03-07
    相关资源
    最近更新 更多