Intellij IDE не запускает юнит-тесты - PullRequest
1 голос
/ 04 июня 2019

Я использую IntelliJ IDEA 2018.3.1 и пытаюсь проверить класс с помощью встроенного средства запуска тестов. Тест, похоже, компилируется, но не запускается.

Это многомодульный проект Maven, и другие модули имеют запущенные тесты. Однако я не смог найти каких-либо различий между проектами. Плагин surefire специально определен для этого проекта, а для <skipTests> специально установлено значение false. Я повторно импортировал проект несколько раз на случай, если конфигурация maven влияет на встроенный бегун.

Изображение ниже - единственный вывод, который я получаю. Отладка / Точки останова не остановятся.

enter image description here

Если кто-то может помочь или бросить в меня возможности, я был бы признателен.

Edit:

Вот упрощенная версия теста, который я пытаюсь запустить:

package com.jason;

// imports

@RunWith(BlockJUnit4TestRunner.class)
public class MyTest {

    private ClassUnderTest clazz;

    private DaoClass dao;

    @Before
    public void setUp() {
       // using Mockito to mock the DaoClass

       // injecting the DAO into the ClassUnderTest
    }

    @Test
    public void testMethod() {

        Assert.assertTrue(true);
    }
}

Я пытаюсь запустить тест, щелкнув правой кнопкой мыши метод, помеченный @Test, и щелкнув «Выполнить». Опция для запуска теста появляется в контекстном меню. Когда я это делаю, все, что появляется, это скриншот.

Я попытался сделать следующее для устранения проблемы:

    • В файле pom.xml для соответствующего модуля я вручную указал плагин surefire в разделе <build><plugins>. Затем я сделал реимпорт, чтобы забрать изменения.
  • Я установил точки останова в коде и запустил тест в режиме отладки.
  • Я попытался зарегистрировать вывод, как с помощью регистратора slf4j, так и System.out.println ()
  • Я попытался найти какие-либо различия в файле IDEA .iml между модулем, в котором выполняются тесты, и этим модулем, в котором тесты не запускаются.
  • Я написал очень простой тестовый класс с методом, помеченным @Test и содержащим строку Assert.assertTrue(true)

Редактировать 2 Попытка запустить mvn test -Dcontrollername приводит к следующему выводу:

Failed to execute goal org.apache.maven.plugins:maven-surefire-plugin:2.19.1:test (default-test) on project rma-svc: Execution default-test of goal org.apache.maven.plugins:maven-surefire-plugin:2.19.1:test failed: The forked VM terminated without properly saying goodbye. VM crash or System.exit called?

Редактировать 3

Я обновил свой плагин Maven surefire до версии 2.22.2 и больше не вижу проблемы с раздвоенной JVM. Однако при работе mvn test -DskipTests=false выводится No tests were executed!

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