使用 Ant 进行测试 - 无法测试子目录中的文件



我有一个java的android应用程序。我想使用带有 ant 的 xml 脚本对其进行测试。现在我们有几个包和一个标准目录结构,用于源文件和测试文件。有一个"tests"文件夹(所有测试代码的根目录),其中包含 1 个文件,例如 A.java和一些子文件夹,这些子文件夹又包含一些测试文件或子文件夹。只有文件 A.java 进行测试,其余文件 A 不进行测试。如果我将 xml 脚本中的目录路径从"tests"更改为"tests/ui",那么文件夹"ui"中的测试文件将无法测试,并且当我签出存储测试输出的"测试结果"文件夹中的文件时,我收到一些错误 - 找不到类错误。

我已经包含了编译代码的父目录,并在 id = "test.classpath" 的路径中包含了所需的外部 jar。 我想我应该每个类型的文件都.class而不是父文件夹的路径。

代码是:

<target name="test-run" description="Run Test">
     <delete dir = "test_result" />
     <mkdir dir = "test_result" />
     <junit printsummary="yes" haltonfailure="yes" showoutput="yes" >
        <classpath refid="test.classpath"/>
        <batchtest fork="yes" todir="test_result">
            <formatter type="xml"/>
            <fileset dir="tests" includes="**/*" />
        </batchtest>
     </junit>
 </target>

您能否解释一下如何实现假设通用文件结构的动机。

编辑:

以下是上述xml中使用的路径,其中文件夹输出包含由idea ide生成的源文件和测试文件的.class文件:

  <path id="test.classpath">
    <pathelement path="testlibs/jmockit.jar"/>
    <pathelement path="testlibs/jmockit-coverage.jar"/>
    <pathelement path="testlibs/jmockit-coverage-htmlfull.jar"/>
    <pathelement path="/opt/idea-IU-117.418/lib/junit-4.10.jar"/>
    <pathelement path="out"/>
  </path>

尝试将fileset元素更改为:

<fileset dir="tests" includes="**/*.java" />

相关内容

  • 没有找到相关文章

最新更新