Ant使用纺织品使用TestNG构建类文件

时间:2014-12-31 17:22:17

标签: java testing ant

我正在使用Ant构建我的项目,并且在使用TestNG时遇到了使用文本文件运行测试的问题。下面是我的代码,其中包含两个编译和运行我的测试代码的目标:

 <target name="compile-tests" depends="compile"
          description="Compile the project test source-code." >

    <mkdir dir="${testBuildDir}" />

    <javac destdir="${testBuildDir}" classpathref="test.path"
           debug="${java.debug}" optimize="${java.opt}" deprecation="on">
      <src path="${testSrcDir}" />
    </javac>

    <!-- Copies text testing files over -->
    <copy todir="${testBuildDir}">
        <fileset dir="${testSrcDir}">
            <include name="**/*.txt" />
        </fileset>
    </copy>
  </target>

  <target name="test" depends="compile-tests"
    description="Runs all the unit tests">
    <testng suitename="boggle-tests" outputdir="${testResultsDir}">
        <classpath>
          <path refid="test.path" />
          <pathelement path="${testBuildDir}" />
        </classpath>
        <classfileset dir="${testBuildDir}" />
    </testng>
  </target>

另外,我在下面提供了我的xml文件中使用的属性列表:

  <property name="srcDir"  location="src" />
  <property name="libDir"  location="lib" />

  <property name="buildDir" location="build"/>
  <property name="buildClassesDir" location="${buildDir}/classes"/>
  <property name="javaDocDir" location="${buildDir}/javadoc"/>

  <property name="testSrcDir" location="test"/>
  <property name="testBuildDir" location="${buildDir}/tests"/>
  <property name="testResultsDir" location="${buildDir}/results"/>

  <property name="testNGFile" location="${libDir}/testng-6.8.jar" />

所以我已经在${testBuildDir}中包含了我的测试源代码和源代码使用的测试文本文件。我的编译测试目标只是编译.java文件并在目标中创建.class文件以及复制我的测试.txt文件。

然后我的测试目标使用TestNG框架运行所有这些.class文件。我遇到的问题是,当我运行测试目标时,我的测试代码失败,因为它说它无法找到用于测试目的的.txt文件。但是,我不明白为什么会发生这种情况,因为我的编译测试目标明显按预期工作并包含.txt测试文件。

我一直在为此奋斗太久,真的需要帮助。

0 个答案:

没有答案