Запуск теста JUnit в качестве цели Ant - PullRequest
1 голос
/ 16 августа 2010

У меня есть простой тестовый пример в каталоге / build, который я пытаюсь скомпилировать и запустить с помощью Ant. Компиляция в порядке, но я не могу понять, как это запустить. Класс:

package money;

import org.junit.*;
import static org.junit.Assert.*;

public class MoneyTest {

    @Test
    public void testAmount() {
        Money m = new Money(20);
        System.out.println("AMOUNT: " + m.amount());
        System.out.println("DOUBLE AMOUNT: " + m.doubleAmount());
        assertEquals(21, m.amount());
    }

}

и файл сборки выглядит следующим образом:

<?xml version="1.0"?>
<project name="Money" default="build-source" basedir=".">

    <description>The Money project build file.</description>
    <property name="src" location="."/>
    <property name="build" location="build"/>
    <property name="junit" location="lib/junit-4.8.2.jar"/>

    <path id="_classpath">
        <pathelement path="${junit}"/>
        <pathelement path="${build}"/>
    </path>

    <target name="prepare">
        <mkdir dir="${build}"/>
    </target>

    <target name="build-source" depends="prepare" description="compile the source ">
        <javac srcdir="${src}" destdir="${build}">
            <classpath refid="_classpath"/>
        </javac>
    </target>

    <target name="run" depends="build-source">
        <java classname="${build}/MoneyTest">
            <classpath refid="_classpath"/>
        </java>
    </target>

</project>

когда я запускаю "ant run" из Терминала, он говорит, что не может найти класс по этому пути.

Спасибо заранее!

1 Ответ

4 голосов
/ 16 августа 2010

Вы указали местоположение как имя класса . Имя класса будет money.MoneyTest, а не /home/build/money/MoneyTest.

Однако вы все равно должны использовать задачу junit вместо задачи java, учитывая, что это тест JUnit, а не само приложение Java. (Например, у него нет метода main.)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...