Выполните тесты Maven на огурец от IntelliJ - PullRequest
0 голосов
/ 08 мая 2018

У меня есть проект maven, который запускает тесты на огурец с помощью JUnit runner. Я могу использовать следующий синтаксис из командной строки для запуска тестов:

mvn -Dcucumber.options="--tags @Sanity" test

Это прекрасно работает при запуске из консоли. Сейчас я пытаюсь настроить конфигурацию бегуна Maven в IntelliJ IDEA, чтобы сделать то же самое - и я просто не могу заставить ее работать. Согласно документации IntelliJ , мне нужно \ -escape двойные кавычки - поэтому в командной строке я указываю -Dcucumber.options=\'--tags @Sanity\' test

Maven выполняется - но выдает это сообщение об ошибке:

Unknown lifecycle phase "@Sanity""

Похоже, что параметр не экранирован перед передачей в maven. Затем я попытался поместить все это в кавычки, указав параметры как '-Dcucumber.options=\"--tags @Sanity\"' test. Это приводит к следующей ошибке:

Unknown lifecycle phase "'-Dcucumber.options="--tags"

Опять же, я думаю, что-то с цитированием / экранированием. Затем я попробовал следующие варианты: "-Dcucumber.options='--tags @Sanity'" test - на этот раз maven проходит этап компиляции и, по-видимому, пытается запустить тесты, но затем завершается неудачей со следующей ошибкой:

Tests in error: 

initializationError (com.mycompany.mypackage.MyRunner): неизвестный параметр: --tags @ Sanity

Я перепробовал все виды цитирования / экранирования / двойного экранирования / двойного цитирования / и т.д. - безрезультатно.

Опять же, запуск maven из командной строки работает нормально - я особенно заинтересован в том, чтобы настроить его как конфигурацию бегуна в IntelliJ IDEA.

1 Ответ

0 голосов
/ 09 мая 2018

Вам необходимо экранировать символ пробела: mvn "-Dcucumber.options = - tags \ @Sanity" test

...