Подтвердить что ты не робот

JUnit4 + Eclipse "Внутренняя ошибка при запуске"

Я пытаюсь запустить тестовые примеры JUnit4 на Eclipse 3.4.2, но это даже не для меня. У меня есть junit-4.7.jar в моем пути сборки и тестовом приложении.

Вот простой пример, иллюстрирующий мою проблему

package test;
import org.junit.Before;
import org.junit.Test;

public class UTest {    
    @Test
    public void test() {
    }

    @Before
    public void setUp() throws Exception {
    }
}

Это компилируется отлично

Затем я делаю "Запуск JUnit Test case" из Eclipse, и я получаю сообщение об ошибке с этим сообщением

"Launching UTest' has encountered a problem
An internal error occurred during: "Launching UTest".
java.lang.NullPointerException

Что вызывает эти NullPointerExceptions? Что я делаю неправильно?

4b9b3361

Ответ 1

Я смог исправить это, просто удалив рабочую область и каталог Eclipse и начиная с.

Ответ 2

Что сработало для меня после всех попыток:

  • Перейти к справочной системе
  • Установить новое программное обеспечение
  • Работа с: Juno
  • Языки программирования (развернуть)
  • Установка инструментов разработки Java
  • Restart

Работает:)

Ответ 3

Это сработало для меня:

  • создать другую копию тестового класса (CopyOfUTest.java)
  • запустите копию, чтобы убедиться, что она прошла
  • перейдите в Run > Run Configurations
  • в JUnit, найдите конфигурации запуска для исходного класса и скопированного класса
  • щелкните правой кнопкой мыши и удалите конфигурацию исходного класса
  • переименуйте конфигурацию скопированного класса в исходное имя конфигурации
  • удалить скопированный класс из проекта

Ответ 5

Ни один из приведенных ответов здесь не работал, поэтому я просто установил и использовал InfiniTest. У этого нет этой проблемы, и он также автоматически запускает тесты, поэтому я могу сосредоточиться на своей работе.

Eclipse with Infinitest showing a red "tests failed" status message and the corresponding assertion error in the "Problems" tab

Ответ 6

Эта ошибка В eclipse может быть вызвана, если вы также используете плагины Android Development Kit:

"Launching UTest' has encountered a problem
    An internal error occurred during: "Launching UTest".
    java.lang.NullPointerException

Может быть вызвано, если вы загружаете обычный Java-проект в экземпляр Eclipse с установленными и включенными плагинами ADD. В этой ситуации Eclipse ищет файлы проектов "Android" и не находит их. Поэтому он говорит: "NullPointerException".

Итак, чтобы исправить это, повторно загрузите Eclipse без плагина ADT: https://www.eclipse.org/downloads/

Затем снова импортируйте проект. И тесты junit работают без проблем.

Многие люди ненавидят eclipse за загадочные сообщения об ошибках. Как и мы, в мире перфокарт 1950 года, где нет сообщений об ошибках. Программа останавливается и происходит undefined.

Ответ 7

Ваш код отлично работает для меня.

Затмение Версия: 3.4.1 Идентификатор сборки: M20080911-1700

Я нажимаю правой кнопкой мыши на .java файл RunAs JUnit Test. Это указывает на то, что проблема вызвана проблемой конфигурации Eclipse, а не проблемой кода.

Ответ 8

Спасибо, что тоже решила мою проблему. Проблема началась, когда я удалил старый симулятор и создал новый. Fix: Как и OP говорит удалить рабочее пространство, не забудьте сохранить в нем проекты:) затем импортируйте их обратно в затмение "Звучит много работы"? Принял меня меньше чем за полминуты.

Ответ 9

Если вы используете Android и связанные с ним плагины, тогда Android поддерживает только JUnit 3.

Я решил проблему, выбрав Test Runner как JUnit 3.

В моем классе JUnit 4 добавляется в библиотеки build- > .

Затем, чтобы запустить тестовый файл, перейдите к: Запуск As → Run Configurations, затем выберите соответствующий файл test.java и соответственно выберите Test Runner (будь то JUnit 3 или 4).

Ответ 10

У меня возникла аналогичная проблема, но я использую Python. Это то, что я сделал, чтобы решить/избежать этого:

  • Удален мой .project файл и проект из Eclipse.
  • Создал проект еще раз.
  • Все работало.

Проблема, казалось, была в файле .project, где были некоторые ссылки на CDT Builder и не было в новом файле .project.