【发布时间】:2016-04-26 04:00:13
【问题描述】:
在运行我的 karma 测试时,我在 jenkins 构建中收到此错误。所以说清楚,这在本地工作正常,我所有的测试都通过了,但是当我在詹金斯盒子上运行完全相同的代码时,我得到了错误:
PhantomJS 1.9.8 (Linux 0.0.0) VisitDataSpec #emailExists should return true if email is already FAILED
TypeError: 'undefined' is not a function (evaluating '_.contains(visitEmails,email)')
at /home/server/jenkins/workspace/Reception UI Build/src/app/model/VisitData.js:9
at /home/server/jenkins/workspace/Reception UI Build/test/app/model/VisitData.spec.js:208
我闻到了 phantomjs 的错误版本。服务器上的版本是1.9.0。我在本地将我的版本降级到相同的版本,以尝试在本地重现问题,但没有发生。
我已经尝试同时包含下划线和 lodash,但这些库都不起作用。
在 Restangular 也尝试使用下划线的测试中,我遇到了同样的错误:
PhantomJS 1.9.8 (Linux 0.0.0) EmailVisitControllerSpec #signIn should call VisitService to add a new service with scope data FAILED
TypeError: 'undefined' is not a function (evaluating '_.contains(safeMethods, operation.toLowerCase())')
at /home/server/jenkins/workspace/Reception UI Build/bower_components/restangular/dist/restangular.js:21
at elemFunction (/home/server/jenkins/workspace/Reception UI Build/bower_components/restangular/dist/restangular.js:1217)
at wrapper (/home/server/jenkins/workspace/Reception UI Build/bower_components/lodash/lodash.js:3949)
at postFunction (/home/server/jenkins/workspace/Reception UI Build/bower_components/restangular/dist/restangular.js:1246)
at apply (/home/server/jenkins/workspace/Reception UI Build/bower_components/lodash/lodash.js:402)
at wrapper (/home/server/jenkins/workspace/Reception UI Build/bower_components/lodash/lodash.js:4254)
at /home/server/jenkins/workspace/Reception UI Build/src/app/rest/VisitService.js:9
at invoke (/home/server/jenkins/workspace/Reception UI Build/node_modules/karma-sinon-chai/node_modules/sinon/pkg/sinon.js:2583)
at addVisit (:1)
at /home/server/jenkins/workspace/Reception UI Build/src/app/visits/EmailVisitController.js:9
at /home/server/jenkins/workspace/Reception UI Build/test/app/visits/EmailVisitController.spec.js:91
使用 angular 1.4.2、angular-mocks 1.4.2、mocha 2.3.4 和现在,下划线 1.8.3 或 lodash 3.10.1(都尝试过)。
顺便说一句,这可能是相关的:在 Jenkins 上构建时,我有其中四个:
npm WARN install Couldn't install optional dependency: Unsupported
也许它没有解决一些依赖关系,但不幸的是我看不到哪些依赖关系。使用 npm 3.3.2。
有人对我在这里缺少的东西有任何想法吗?任何已知的不兼容版本?
【问题讨论】:
-
我也有同样的问题 - 你找到解决方案了吗?
标签: angularjs npm phantomjs underscore.js lodash