Netbeans: «Выполнить -> Тестовый проект» ничего не делает - PullRequest
5 голосов
/ 02 марта 2010

У меня есть много тестов JUnit, которые все созданы помощником Netbeans (так что ничего не настроено). Я могу запустить каждый тест вручную , выполнив «Файл теста» (Ctrl + F6).

Но когда я использую «Выполнить -> Тестовый проект», отображается сообщение «Тесты не выполнены».

Нужно ли регистрировать каждый тест JUnit где-нибудь?
Или в чем тут проблема?

Перед этим в окне вывода появляется следующее:

init:
Deleting: /MY-WORK/my.data.adv/build/built-jar.properties
deps-jar:
Updating property file: /MY-WORK/my.data.adv/build/built-jar.properties
my.commons.init:
my.commons.deps-jar:
Updating property file: /MY-WORK/my.data.adv/build/built-jar.properties
my.commons.compile:
Copy libraries to /MY-WORK/my.commons/dist/lib.
my.commons.jar:
my.data.init:
my.data.deps-jar:
Updating property file: /MY-WORK/my.data.adv/build/built-jar.properties
my.data.compile:
Copy libraries to /MY-WORK/my.data/dist/lib.
my.data.jar:
compile:
compile-test:
test-report:
test:
BUILD SUCCESSFUL (total time: 0 seconds)

EDIT

  • Тип проекта "библиотека классов", нет используются пользовательские конфигурации в build.xml.

  • Возможно, уместно упомянуть, что проект старый (создан с некоторой версией Netbeans до 6.7).

Ответы [ 4 ]

9 голосов
/ 03 марта 2010

Поскольку я представил правильную подсказку, необходимую для генерации ответа, я полагаю, что должен добавить к ней немного ценности ...

Если вы создаете проект Java-> Class Library с помощью NetBeans, вы можете создать модульный тест, связанный с каждым из классов в исходных пакетах вашего проекта. Вам просто нужно щелкнуть правой кнопкой мыши класс в проводнике проектов.

Если вы создаете «первый тест» для проекта, среда IDE позволяет выбирать между JUnit 3 и JUnit 4.

Когда вы создаете тест для abcNewClass, NetBeans позволит вам называть тест как угодно, а тест помещать в любой пакет, который вы хотите ... в большинстве случаев вы не хотите изменять отображаемые значения по умолчанию в диалоговом окне (abcNewClassTest). В сборках NetBeans 6.9 появляется предупреждение, если в имени создаваемого теста отсутствует суффикс «Test».

Если вы создаете имена тестовых классов, которые не заканчиваются на «Test», вы все равно можете заставить их работать при использовании действия Test в проекте. Вам просто нужно вызвать их из «обычного» тестового класса.

6 голосов
/ 03 марта 2010

Спасибо пользователю vkraemer!

Решение: только тесты JUnit запускаются, когда их имя заканчивается на Test.

Раздел из build-impl.xml доказывает это:

<target depends="init,compile-test,-pre-test-run"
    if="have.tests" name="-do-test-run">
  <j2seproject3:junit testincludes="**/*Test.java"/>
</target>
1 голос
/ 21 ноября 2013

Если вы используете maven, вы можете проверить свой плагин surefire на pom.xml

...
 <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-surefire-plugin</artifactId>
            <version>2.11</version>
            <configuration>
                <includes>
                    <include>**/*Test.java</include>                        
                </includes>
                <systemPropertyVariables>
                    <java.util.logging.config.file>src/test/resources/logging.properties</java.util.logging.config.file>
                </systemPropertyVariables>
            </configuration>
        </plugin>


  ...
0 голосов
/ 03 июня 2010

Мои тесты работали, затем они остановились, просто отображая:

Тесты не выполнены. (0,0 с)

Проблема заключалась в дополнительном пробеле в VM Options: после -D. Это вызвало проблемы:

-D mysetting.home=something

и это исправлено:

-Dmysetting.home=something
...