问题标签 [gulp-protractor]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
336 浏览

protractor - 量角器 e2e、chaijs 和 doSomethingAsync().should.eventually.equal("foo") - TypeError: Cannot read property 'should of undefined"

像 chaijs 在他们的文档中所说的那样,这样做会很有帮助:return doSomethingAsync().should.eventually.equal("foo");

这将加快我的 e2e 测试的编写速度,因为我不必像这样明确地解决承诺:

使用 chai 会很好;柴。期待;柴.应该();chai-as-promise 解决这些承诺并迅速兑现;但是,到目前为止,我没有尝试过任何工作;对 SO 的搜索似乎表明 Chai 使用了与 Protractor 不同的承诺类型,并且承诺类型的不兼容可能导致

TypeError:无法读取未定义的属性“应该”

这就是我导入这些库的方式:

return doSomethingAsync().should.eventually.equal("foo");有没有人在不使用其他库的情况下成功使用'Q'?同样,我不想依赖其他库,例如'Q';如果可能的话,我只想在量角器 e2e 中使用纯 chaijs;不是 expect() 而是.should.eventually.....

谢谢

0 投票
2 回答
1242 浏览

angularjs - 量角器无法读取未定义的属性“超时”

我一直在为我当前的 Angular 项目编写数十个量角器测试,它们都有效。

我粘贴了测试以创建一组新的测试,并注意到如果有一个describe直接嵌套在 anotherdescribe中,我会收到一个Cannot read property 'timeout' of undefined错误并且 Protractor 以代码 100 退出。

如果我删除嵌套的describe,它会立即工作。

如果it在嵌套之前有一个describe,那就行了......所以所有这些对我来说都非常奇怪。

这是测试和错误:

代码:

错误:

0 投票
3 回答
280 浏览

selenium-webdriver - 如何告诉量角器不要等到页面完全加载

我正在酱实验室上用量角器测试一个非角度页面。由于注销页面,我的测试经常失败。注销页面上有广告,但是我尝试设置超时多长时间,它达到了它并且规范失败了。

当我确定我没有达到超时时,我在测试期间遇到了同样的失败 a) 和 b)。有任何想法吗?

我的超时:

错误信息:

代码:

0 投票
1 回答
285 浏览

gulp - 在没有 gulp.src 的情况下运行 Gulp-Angular-Protractor

Gulp-Protractor 和 Gulp-Angular-Protractor 可以将参数和配置文件传递给量角器。

那么为什么我需要将文件列表传递给 gulp?

问题是量角器没有运行套件,而是运行 src 中的文件。有没有办法直接调用量角器?

0 投票
2 回答
1955 浏览

javascript - 量角器 .getAttribute('href') 不工作

目标:测试我的“div”中第一个元素的“href”值是否等于“myLink”。

网页

量角器代码

错误消息:“预期 null 等于 'myLink'。”

问题:这段代码有什么问题?

0 投票
0 回答
1522 浏览

protractor - 使用 browserstack-local 在 browserstack 上运行 multiCapabilities

我正在做一个角度项目,我们使用量角器进行端到端测试。我们gulp-protractor用来运行这些测试。一切都在本地运行良好。现在我们想增加被测浏览器和设备的数量,所以我开始改用protractor.conf.jsbrowserstack。

正在测试的 web 应用程序在本地运行,所以我browserstack-local也使用。

我有一个适用于一个浏览器的配置,该浏览器测试在本地运行的网站(灵感来自https://github.com/browserstack/protractor-browserstack/blob/master/conf/local.conf.js)。

现在,我正在尝试调整它以在多浏览器上运行(遵循https://github.com/browserstack/protractor-browserstack/blob/master/conf/parallel.conf.js)。我最终得到了那个配置:

测试启动并运行(我的报告是为每个浏览器生成的),但它永远不会停止。这里是控制台日志的结尾:

所以我必须手动杀死它们,这不是一个选项,因为最后,测试将在持续集成服务器中运行。

有谁知道如何使用 browserstack 在多浏览器上进行 e2e 测试,并且在本地运行被测 Web 应用程序?

更新:browserstack 支持在其 github 存储库上添加了一个在本地运行的多功能示例:https ://github.com/browserstack/protractor-browserstack/blob/master/conf/parallel_local.conf.js

唯一的区别是使用afterLaunch而不是onComplete

谢谢

0 投票
1 回答
1030 浏览

protractor - 如何按顺序运行具有不同配置文件的量角器?

我有不同的量角器配置文件,我想创建一个 gulp 任务,依次为每个配置文件运行量角器。这是我的实际代码:

它仅使用第一个配置文件运行量角器然后停止,即使 foreach 列出了不同的 conf 文件。

有谁知道我错过了什么?

谢谢

0 投票
0 回答
350 浏览

google-chrome - 消息:命令 `./node_modules/protractor/bin/protractor ./test/protractor.config.js` 失败,退出代码为 1

我正在使用带有量角器+硒的gulp。功能测试在我的机器(mac)上完美地在 Chrome 上运行。但在 CENTOS 7(docker 容器)上,它不适用于 Chrome。如果我从 PATH 变量中删除 Chromedriver,我会得到同样的错误。我怎么知道这是硒问题还是 chromedriver 问题?我做了一个“npm install”并有“chromedriver”:“^2.21.2”,“protractor”:“^3.3.0”,“selenium-server-standalone-jar”:“^2.53.0”, webdriver-manager": "^10.0.2" 在 package.json 中指定。运行 gulp 命令时有什么问题?

这是我的错误日志:

/home/jenkins/workspace/Myproject/Develop/node_modules/selenium-webdriver/error.js:27 super(opt_error);

^

WebDriverError:在 Object.checkLegacyResponse (/home/jenkins/workspace/Myproject/Develop/node_modules/selenium 的 WebDriverError (/home/jenkins/workspace/Myproject/Develop/node_modules/selenium-webdriver/error.js:27:5) 处为空-webdriver/error.js:580:13) 在 /home/jenkins/workspace/Myproject/Develop/node_modules/selenium-webdriver/lib/webdriver.js:64:13 在 Promise.invokeCallback_ (/home/jenkins/workspace/ Myproject/Develop/node_modules/selenium-webdriver/lib/promise.js:1329:14) 在 TaskQueue.execute_ (/home/jenkins/workspace/Myproject/Develop/node_modules/selenium-webdriver/lib/promise.js:2790: 14)在TaskQueue.executeNext_(/home/jenkins/workspace/Myproject/Develop/node_modules/selenium-webdriver/lib/promise.js:2773:21)在asyncRun(/home/jenkins/workspace/Myproject/Develop/node_modules/ selenium-webdriver/lib/promise.js:2652:27) 在/home/jenkins/workspace/Myproject/Develop/node_modules/selenium-webdriver/lib/promise.js:639:7 at process._tickCallback (internal/process/next_tick.js:103:7) 来自:任务: WebDriver.createSession() at acquireSession (/home/jenkins/workspace/Myproject/Develop/node_modules/selenium-webdriver/lib/webdriver.js:62:22) 在 Function.createSession (/home/jenkins/workspace/Myproject/Develop /node_modules/selenium-webdriver/lib/webdriver.js:295:12) 在 Builder.build (/home/jenkins/workspace/Myproject/Develop/node_modules/selenium-webdriver/builder.js:458:24) 在本地。 DriverProvider.getNewDriver (/home/jenkins/workspace/Myproject/Develop/node_modules/protractor/built/driverProviders/driverProvider.js:37:33) 在 Runner.createBrowser (/home/jenkins/workspace/Myproject/Develop/node_modules/protractor /built/runner.js:182:43) 在 /home/jenkins/workspace/Myproject/Develop/node_modules/protractor/built/runner.js:255:30 在 _fulfilled (/home/jenkins/workspace/Myproject/Develop/node_modules/q/q.js:834 :54) 在 self.promiseDispatch.done (/home/jenkins/workspace/Myproject/Develop/node_modules/q/q.js:863:30) 在 Promise.promise.promiseDispatch (/home/jenkins/workspace/Myproject/Develop /node_modules/q/q.js:796:13) 在 /home/jenkins/workspace/Myproject/Develop/node_modules/q/q.js:604:44 E/launcher - 进程退出,错误代码为 1 'test:functional ' 插件 'gulp-shell' 25 秒后出错promiseDispatch (/home/jenkins/workspace/Myproject/Develop/node_modules/q/q.js:796:13) 在/home/jenkins/workspace/Myproject/Develop/node_modules/q/q.js:604:44 E/启动器 - 进程退出,错误代码 1 'test:functional' 在 25 秒后出错 插件 'gulp-shell' 中的错误promiseDispatch (/home/jenkins/workspace/Myproject/Develop/node_modules/q/q.js:796:13) 在/home/jenkins/workspace/Myproject/Develop/node_modules/q/q.js:604:44 E/启动器 - 进程退出,错误代码 1 'test:functional' 在 25 秒后出错 插件 'gulp-shell' 中的错误

消息:命令 './node_modules/protractor/bin/protractor ./test/protractor.config.js' 失败,退出代码为 1

请帮帮我

0 投票
1 回答
280 浏览

javascript - 量角器元素此时不可点击

我正在尝试测试“导出到 csv”功能,但出现错误元素在点 (967、125) 处不可点击。其他元素会收到点击:

这是我的代码:

0 投票
5 回答
5052 浏览

jenkins - 当使用 'shardTestFiles' 共享测试时,protractor-jasmine2-html-reporter 不会合并所有测试的结果:conf 文件中的 true

最近我们已经将我们的 e2e 测试配置为在 Jenkins 上,很快我们意识到我们必须使用共享测试文件:真正的选项,因为完整的套件运行需要很长时间,我们每天要花 9 到 10 个小时来查看。但是当我们在 conf 文件中配置以下两个选项时。测试运行良好,但最终报告仅在保存路径中显示最后的规范运行结果。合并所有选项不提供完整报告。

请找到我们的 conf 文件详细信息。任何帮助将不胜感激。

根据 Aditya 提供的解决方案编辑 conf 文件。请帮忙