【发布时间】:2016-06-16 12:56:58
【问题描述】:
我正在尝试在 Jenkins 服务器上运行我的量角器测试。但我每次都会收到以下错误消息:
TypeError: 无法读取未定义的属性“visibilityOf”
堆栈跟踪: TypeError:无法在 waitingForElement 读取未定义的属性“visibilityOf” (/var/lib/jenkins/jobs/workspace/project/dist/dev/scripts/test/e2e/helper.e2e.js:9:20) 在 Object.switchTab (/var/lib/jenkins/jobs/workspace/project/dist/dev/scripts/test/e2e/helper.e2e.js:135:5) 在空。 (/var/lib/jenkins/jobs/workspace/project/dist/dev/scripts/test/e2e/test-employee.e2e.js:87
这是各自的代码:
function waitingForElement(elem, timeOut) {
var EC = protractor.ExpectedConditions;
browser.wait(EC.visibilityOf(elem), timeOut);
....
}
在最上面一行我参考了角度量角器类型:
/// <reference path="../../../../typings_custom/angular-protractor/index.d.ts" />
这是我的 Jenkins 配置:
echo "build tests"
npm run build.e2e
#Run protractor
protractor protractor-config.js --params.url "http://localhost:90" --suite testSuite
但是当我在本地或在服务器终端中运行 Protractor 测试时,它们正在工作,但不是作为 Jenkins 工作。
有什么想法吗?
【问题讨论】:
-
您能否显示测试中使用
waitingForElement失败的行?从错误消息来看,您传入的elem参数似乎是undefined -
已解决 - 由于缺少权限导致错误。我已经尝试使用量角器的gobal安装,但我需要使用本地量角器安装(./node_modules/protractor/...)
标签: jenkins angular protractor