运行测试时出现随机 Karma PhantomJS 脚本错误

fox*_*009 5 jenkins phantomjs angularjs karma-runner gulp

我有一个 gulp 任务,它使用 karma 测试运行器为 angular 运行 jasmine 单元测试。一段时间以来,我一直Script Errors在我的 Jenkins CI 系统中随机获取这些信息,因此,测试失败了。这些是在我添加了 29 个单元测试,总共 160 个单元测试(相当少)之后开始的。他们没有显示任何失败。他们显示错误

  Pre-population Job Service
    ? should be registered
    .getJobList
      ? should get a list of pre-population jobs
    .getJobListWithID
      ? should get a single pre-population job
    .runJob
      ? should run a pre-population job
    .deleteJob
      ? should delete a pre-population job
    .editJob
      ? should edit a pre-pop job

  Publish Service
    ? should be registered
    .getPublishErrors
      ? should get an array of publishing errors successfully
      ? should not get an array of publishing errors if no data is obtained
PhantomJS 2.1.1 (Mac OS X 0.0.0) ERROR
  Script error.

PhantomJS 2.1.1 (Mac OS X 0.0.0): Executed 142 of 153 ERROR (26.945 secs / 15.929 secs)


  Publish Service
    .republish
      ? should hit republish endpoint for a distribution
    .republishStatus
      ? should hit endpoint for a distribution to verify if it republished or not

  Republish Logs Service
    ? should be registered
    .getAllLogs
      ? should get an array of republishing logs

  Tasks Data Dump Service
    ? should be registered
    .getTasksDataDumpList
      ? should get a list of tasks data dump jobs
    .getTasksDataDump
      ? should get a single task data dump job
    .getOrganizations
      ? should get a list of instances with their sso id
    .runTasksDataDumpJob
      ? should run a tasks data dump job
    .deleteTasksDataDumpJob
      ? should delete a tasks data dump job
[20:09:50] 'test' errored after 29 s
[20:09:50] Error: Failed 1 tests.
    at /Users/newscred/projects/support-dashboard-interns/client/gulp/unit-tests.js:34:22
    at removeAllListeners (/Users/newscred/projects/support-dashboard-interns/client/node_modules/karma/lib/server.js:379:7)
    at Server.<anonymous> (/Users/newscred/projects/support-dashboard-interns/client/node_modules/karma/lib/server.js:390:9)
    at Server.g (events.js:291:16)
    at emitNone (events.js:91:20)
    at Server.emit (events.js:185:7)
    at emitCloseNT (net.js:1553:8)
    at _combinedTickCallback (internal/process/next_tick.js:71:11)
    at process._tickCallback (internal/process/next_tick.js:98:9)
Run Code Online (Sandbox Code Playgroud)

在我的本地机器上,有时会发生,有时不会。但是在我使用 docker 运行测试的 Jenkins CI 中,它总是失败并出现此脚本错误。并且此脚本错误在任何测试后随机出现,因此无法准确确定导致此错误的代码。在本地使用 docker,测试也通过了。但是在 CI 中,无论如何它总是失败,并且它失败了,Script Error.因为我删除了从外部脚本/任何 $watch 或 $window 相关测试代码中提取的任何代码。这些解决方案都没有帮助我。这些是在 OPEN Github 问题https://github.com/karma-runner/karma/issues/1268 中提出的

我真的需要快速解决这个问题。github 问题仍然悬而未决,这意味着它还没有解决,但我的项目如果不让它工作,基本上是没用的。请帮忙!