【问题标题】:Jasmine-reporters error in angularjs end to end testangularjs端到端测试中的Jasmine-reporters错误
【发布时间】:2014-08-14 16:23:56
【问题描述】:

我正在尝试将 Jasmine 报告与 Angular 端到端测试集成。但是在运行测试时出现以下错误(我什至在基于 Windows 的环境中尝试了相同的操作并得到了相同的结果),

in on prepare method
Error: Cannot find module 'jasmine-reporters'
    at Function.Module._resolveFilename (module.js:338:15)
    at Function.Module._load (module.js:280:25)
    at Module.require (module.js:364:17)
    at require (module.js:380:17)
    at exports.config.onPrepare (/apps/opt/projects/pcp/workspace/pcp/modules/web/public/test/config/protractor-e2e-conf.js:18:6)
    at Runner.runFilenamesOrFns_ (/apps/softwares/node-v0.10.28-linux-x86/lib/node_modules/protractor/lib/runner.js:64:9)
    at Runner.runTestPreparers (/apps/softwares/node-v0.10.28-linux-x86/lib/node_modules/protractor/lib/runner.js:91:8)
    at runner.controlFlow.execute.then.jasmineNodeOpts (/apps/softwares/node-v0.10.28-linux-x86/lib/node_modules/protractor/lib/frameworks/jasmine.js:39:12)
    at webdriver.promise.ControlFlow.runInNewFrame_ (/apps/softwares/node-v0.10.28-linux-x86/lib/node_modules/protractor/node_modules/selenium-webdriver/lib/webdriver/promise.js:1531:20)
    at webdriver.promise.ControlFlow.runEventLoop_ (/apps/softwares/node-v0.10.28-linux-x86/lib/node_modules/protractor/node_modules/selenium-webdriver/lib/webdriver/promise.js:1396:8)
==== async task ====
run test preparers
    at Object.exports.run (/apps/softwares/node-v0.10.28-linux-x86/lib/node_modules/protractor/lib/frameworks/jasmine.js:38:24)
    at driverprovider_.setupEnv.then.then.then.testResult (/apps/softwares/node-v0.10.28-linux-x86/lib/node_modules/protractor/lib/runner.js:233:28)
    at _fulfilled (/apps/softwares/node-v0.10.28-linux-x86/lib/node_modules/protractor/node_modules/q/q.js:797:54)
    at self.promiseDispatch.done (/apps/softwares/node-v0.10.28-linux-x86/lib/node_modules/protractor/node_modules/q/q.js:826:30)
    at Promise.promise.promiseDispatch (/apps/softwares/node-v0.10.28-linux-x86/lib/node_modules/protractor/node_modules/q/q.js:759:13)
    at /apps/softwares/node-v0.10.28-linux-x86/lib/node_modules/protractor/node_modules/q/q.js:525:49
    at flush (/apps/softwares/node-v0.10.28-linux-x86/lib/node_modules/protractor/node_modules/q/q.js:108:17)
    at process._tickCallback (node.js:419:13)
    at Function.Module.runMain (module.js:499:11)

我已经将“Jasmine-reporters”添加为 npm install -g jasmine-reporters

我也可以看到下面的文件夹,

/node-v0.10.28-linux-x86/lib/node_modules/jasmine-reporters

我的量角器配置如下,

出口.config = { seleniumAddress: 'http://172.16.136.181:4444/wd/hub', 眼镜: [ '../e2e/*.js', ], 能力:{ “浏览器名称”:“铬” }, baseUrl:'http://gdc-java64-13:9000', allScriptsTimeout: 96000, onPrepare:函数(){ 要求('茉莉花记者'); jasmine.getEnv().addReporter(new jasmine.JUnitXmlReporter(null, true, true, 'testresults.e2e')); }, 茉莉花节点选择:{ // onComplete 将在驱动程序退出之前被调用。 完成:空, // 如果为真,则显示规范名称。 isVerbose:假, // 如果为真,则将颜色打印到终端。 显示颜色:真, // 如果为 true,则在失败中包含堆栈跟踪。 包括StackTrace:真, // 测试失败前的默认等待时间(以毫秒为单位)。 默认超时间隔:30000 } };

有没有人知道。

谢谢

【问题讨论】:

  • 你有几个节点安装?
  • 我的bashrc中没有只配置一个,PATH=:/apps/softwares/node-v0.10.28-linux-x86/bin

标签: angularjs protractor jasmine-node


【解决方案1】:

这在我将 NODE_PATH 环境变量设置为后解决了,

导出 NODE_PATH = /apps/softwares/node-v0.10.28-linux-x86/lib/node_modules

根据this

【讨论】:

  • 在配置 Team City 以在 Windows Server 2012 R2 上运行量角器测试时存在同样的问题。我必须使用的路径是:C:\Users\Administrator\AppData\Roaming\npm\node_modules。谢谢!这个解决方案对我来说很好
猜你喜欢
  • 1970-01-01
  • 2014-01-10
  • 2014-03-20
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-11-06
  • 1970-01-01
相关资源
最近更新 更多