0
我正在Jenkins CI中设置一个带有自动测试的Angular 4 SPA。 SPA是Maven管理的大型项目的一部分,因此该构建也由Maven管理。到目前为止,我:Karma未在Jenkins CI中运行,无法找到模块'karma-jasmine'
- 安装在詹金斯的插件的NodeJS利用从nodejs.org与版本8.6.0安装
- 配置“全球NPM要安装的软件包” =“卡玛CLI phantomjs,预置的茉莉花核心karma-茉莉花karma-phantomjs-launcher karma-junit-reporter karma-coverage“
- 在pom.xml中添加”maven-karma-plugin“与浏览器= PhantomJS/singleRun = true/reporter = dots,junit
- 在Jenkins作业配置上启用“提供节点& npm bin /文件夹到PATH”
构建过程启动很确定,但最终我得到:
[INFO] --- maven-karma-plugin:1.6:start (default) @ webclient ---
[INFO] Executing Karma Test Suite ...
/var/lib/jenkins/tools/jenkins.plugins.nodejs.tools.NodeJSInstallation/Node.js_8.6.0/bin/karma start /var/lib/jenkins/workspace/funnel_build/webclient/karma.conf.js --browsers PhantomJS --reporters dots,junit --single-run
07 10 2017 17:07:52.801:ERROR [config]: Error in config file!
{ Error: Cannot find module 'karma-jasmine'
at Function.Module._resolveFilename (module.js:527:15)
at Function.Module._load (module.js:476:23)
at Module.require (module.js:568:17)
at require (internal/module.js:11:18)
at module.exports (/var/lib/jenkins/workspace/funnel_build/webclient/karma.conf.js:9:7)
at Object.parseConfig (/var/lib/jenkins/tools/jenkins.plugins.nodejs.tools.NodeJSInstallation/Node.js_8.6.0/lib/node_modules/karma/lib/config.js:410:5)
故宫安装在构建日志的开始:
$ /var/lib/jenkins/tools/jenkins.plugins.nodejs.tools.NodeJSInstallation/Node.js_8.6.0/bin/npm install -g karma-cli phantomjs-prebuilt jasmine-core karma-jasmine karma-phantomjs-launcher karma-junit-reporter karma-coverage
/var/lib/jenkins/tools/jenkins.plugins.nodejs.tools.NodeJSInstallation/Node.js_8.6.0/bin/karma -> /var/lib/jenkins/tools/jenkins.plugins.nodejs.tools.NodeJSInstallation/Node.js_8.6.0/lib/node_modules/karma-cli/bin/karma
/var/lib/jenkins/tools/jenkins.plugins.nodejs.tools.NodeJSInstallation/Node.js_8.6.0/bin/phantomjs -> /var/lib/jenkins/tools/jenkins.plugins.nodejs.tools.NodeJSInstallation/Node.js_8.6.0/lib/node_modules/phantomjs-prebuilt/bin/phantomjs
> [email protected] install /var/lib/jenkins/tools/jenkins.plugins.nodejs.tools.NodeJSInstallation/Node.js_8.6.0/lib/node_modules/phantomjs-prebuilt
> node install.js
Considering PhantomJS found at /var/lib/jenkins/tools/jenkins.plugins.nodejs.tools.NodeJSInstallation/Node.js_8.6.0/bin/phantomjs
Looks like an `npm install -g`
Could not link global install, skipping...
Download already available at /tmp/phantomjs/phantomjs-2.1.1-linux-x86_64.tar.bz2
Verified checksum of previously downloaded file
Extracting tar contents (via spawned process)
Removing /var/lib/jenkins/tools/jenkins.plugins.nodejs.tools.NodeJSInstallation/Node.js_8.6.0/lib/node_modules/phantomjs-prebuilt/lib/phantom
Copying extracted folder /tmp/phantomjs/phantomjs-2.1.1-linux-x86_64.tar.bz2-extract-1507388835905/phantomjs-2.1.1-linux-x86_64 -> /var/lib/jenkins/tools/jenkins.plugins.nodejs.tools.NodeJSInstallation/Node.js_8.6.0/lib/node_modules/phantomjs-prebuilt/lib/phantom
Writing location.js file
Done. Phantomjs binary available at /var/lib/jenkins/tools/jenkins.plugins.nodejs.tools.NodeJSInstallation/Node.js_8.6.0/lib/node_modules/phantomjs-prebuilt/lib/phantom/bin/phantomjs
npm WARN [email protected] requires a peer of [email protected]* but none was installed.
npm WARN [email protected] requires a peer of [email protected]>=0.9 but none was installed.
npm WARN [email protected] requires a peer of [email protected]>=0.9 but none was installed.
+ [email protected]
+ [email protected]
+ [email protected]
+ [email protected]
+ [email protected]
+ [email protected]
+ [email protected]
updated 7 packages in 10.553s
(原因包“因果报应'目前不在榜单上的是我在某个地方读到应该使用业力场所来代替业力。然而,添加'karma'包并不会改变任何东西。)
任何想法为什么“找不到模块'karma-jasmine'”弹出?在(2)中,您会看到列出了karma-jasmine软件包,我在服务器上找到它,但仍未找到NodeJS插件。
谢谢,西蒙