Создайте файл в Sublime Text 3 для вызова тестов JUnit5 - PullRequest
0 голосов
/ 26 мая 2020

Я пытаюсь настроить Sublime Text 3 s Run Java .sublime-build file, чтобы добавить параметр для выполнения JUnit 5 test на Ma c OS X .

Из окна терминала Ma c OS X у меня работает следующее:

$ java -jar /Users/pavlomaistrenko/Documents/Junit1.6/junit-platform-console-standalone-1.6.2.jar -cp /Users/pavlomaistrenko/Documents/GitHub/SvitlanaMo/Java01/ --scan-classpath

Мой Run Java .sublime-build файл конфигурации:

{
    "selector": "source.java",
    "file_patterns": "*.java",
    "working_dir": "$file_path",
    "shell_cmd": "javac -cp .:/Users/pavlomaistrenko/Documents/GitHub/SvitlanaMo/Java01/:/Users/pavlomaistrenko/Documents/Junit1.6/junit-platform-console-standalone-1.6.2.jar $file_name",
    "variants": [
        {
            "name": "Run class.jar",
            "shell_cmd": "java -cp .:/Users/pavlomaistrenko/Documents/GitHub/SvitlanaMo/Java01/:/Users/pavlomaistrenko/Documents/Junit1.6/junit-platform-console-standalone-1.6.2.jar $file_base_name"
        },

        {
            "name": "JavaDoc",
            "shell_cmd": "mkdir -p documentation && javadoc -header \"<script type='text/javascript' src='http://cdn.mathjax.org/mathjax/latest/MathJax.js?config=TeX-AMS-MML_HTMLorMML'></script>\" -d documentation *.java"
        },

        {
            "name": "JAR",
            "cmd": "javac '$realpath$file' && echo \"Main-Class: $file_base_name\" > Manifest.txt && jar cfm $file_base_name.jar Manifest.txt *.class && rm *.class && java -jar $file_base_name.jar"
        },

        {
            "name": "JUnit5",
            "cmd": "java -jar /Users/pavlomaistrenko/Documents/Junit1.6/junit-platform-console-standalone-1.6.2.jar -cp $file_path --scan-classpath"
        }

    ]
}

Вместо полного вывода JUnit 5 я просто получаю [Finished in X.Xs].

Получает ли JUnit казнен? Если да, то где же результат?

PS Я читал, что Sublime не идеальная среда для Java, но все же.

Ответы [ 2 ]

0 голосов
/ 30 мая 2020

Наконец-то обнаружена рабочая конфигурация сборки для JUnit5. Вот фрагмент:

{
    "name": "JUnit5 the folder",
    "env": { "user_path": "/Users/pavlomaistrenko/Documents",
     "junit5":  "Junit1.6/junit-platform-console-standalone-1.6.2.jar",
     "project_path": "GitHub/SvitlanaMo/Java01/"
   },
    "shell_cmd": "java -jar \\$user_path/\\$junit5 -cp .:$file_path --scan-classpath"
},

Обратите внимание на двойное экранирование $ с двумя обратными косыми чертами \\ для Ma c OS. Переменные env не расширяются Sublime, скорее они устанавливаются как переменные среды для этого конкретного вызова загрузчика java (а затем расширяются оболочкой). См. Использование пользовательских переменных в Sublime Text система сборки для объяснения.

0 голосов
/ 28 мая 2020

Я подозреваю, что вы делаете для запуска модульных тестов либо использование сочетания клавиш B , либо выбор Tools → Build в меню. Как работают системы сборки Sublime, это вызовет только начальную команду "shell_cmd". Чтобы запустить один из вариантов, используйте B или выберите Tools → Build With…. Откроется раскрывающийся список со всеми доступными вариантами. Выбор JUnit5 должен запустить ваши модульные тесты, как указано.

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