Как запускать тесты Jest на Jenkins Server

Я пытаюсь запустить тест Jest во время развертывания Jenkins. Если я подключаюсь к серверу по ssh, я могу выполнить sudo для пользователя Jenkins и успешно запустить тесты из рабочей области. Однако я получаю сообщение об ошибке, когда пытаюсь создать проект из графического интерфейса. Вот моя настройка проекта:

Я установил плагин nodejs, который, в свою очередь, глобально устанавливает gulp, jest-cli и babel. введите здесь описание изображения

Затем в шагах сборки:

введите здесь описание изображения

Тест завершается с ошибкой:

TypeError: Cannot read property 'getResourceByPath' of null
    at Loader.getDependenciesFromPath (/var/lib/jenkins/workspace/PHPStaging/node_modules/jest-cli/src/HasteModuleLoader/HasteModuleLoader.js:570:39)
    at /var/lib/jenkins/workspace/PHPStaging/node_modules/jest-cli/src/TestRunner.js:250:22
    at process._tickCallback (node.js:368:9)
Running 6 test suites...
 FAIL  resources/__tests__/myTest.js

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


person Georgemayer    schedule 24.02.2016    source источник
comment
Вы когда-нибудь догадывались об этом?   -  person Janac Meena    schedule 14.03.2018
comment
Эм, да, но это было не просто. У вас получилось?   -  person Georgemayer    schedule 29.03.2018
comment
Нет, я этого не сделал. Любые предложения о том, как вы заставили его работать? Даже некоторые ссылки на ресурсы, которые вы использовали, были бы полезны.   -  person Janac Meena    schedule 29.03.2018
comment
Итак, неплохо начать с того, что когда вы запускаете сборку, Jenkins выводит на консоль, какую версию узла он использует и где находится. Что-то вроде этого /var/lib/jenkins/tools/jenkins.plugins.nodejs.tools.NodeJSInstallation/NodeJS_8.1.0/bin/npm install -g jest-cli. ssh на ваш сервер jenkins и запустите набор тестов от имени пользователя jenkins, выполняющего установку этого узла. Наша проблема закончилась множеством проблем с правами доступа к файлам для пользователя jenkins.   -  person Georgemayer    schedule 02.04.2018
comment
Большое спасибо, очень признателен.   -  person Janac Meena    schedule 02.04.2018