私はJavaでAndroidアプリケーションを持っています。Antでxmlスクリプトを使用してテストしたい。これで、いくつかのパッケージと、ソース ファイルとテスト ファイル用の標準ディレクトリ構造ができました。「tests」フォルダー (すべてのテスト コードのルート) には、A.java という 1 つのファイルと、いくつかのテスト ファイルまたはサブサブフォルダーを含むいくつかのサブフォルダーがあります。ファイル A.java のみがテストされ、残りのファイルはテストされません。xml スクリプトのディレクトリ パスを "tests" から "tests/ui" に変更すると、フォルダ "ui" 内のテスト ファイルをテストできず、ファイルをチェックアウトすると Class Not Found エラーというエラーが発生します。テストの出力を保存する「テスト結果」フォルダー。
コンパイル済みコードの親ディレクトリと必要な外部 jar を id = "test.classpath" のパスに含めました。親フォルダーへのパスではなく、タイプ .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 で使用されるパスです。ここで、out フォルダーには、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>