angularjs - 当我使用 Windows 平台时,有没有办法用 Protractor 进行 headless 测试?

标签 angularjs selenium selenium-webdriver protractor

我正在使用 Protractor 进行测试。谁能告诉我是否有办法将其从使用 Chrome 更改为进行 headless 测试。我看到很多关于这些的文章似乎假设我使用的是 Linux 操作系统。我正在使用 Windows 机器进行测试。

最佳答案

是的 phantomjs 与 Windows 中的 Protractor 一起使用。我也发现几乎所有的在线文档都是 *nix 特定的,但是让它在 Windows 中工作非常容易。假设您已经使用 chrome 运行 Protractor :

添加 phantomjs。您可以安装 Windows 版本或安装节点模块。我建议使用 node 模块,因为如果需要设置另一个开发环境,它将简化build设置:

npm install phantomjs --save-dev

然后更新您的 protractor.conf.js 以指向 phantomjs:
capabilities: {
  browserName: 'phantomjs',
  'phantomjs.binary.path': require('phantomjs').path
},

注意 phantomjs.binary.path 的值。迄今为止,所有在线文档都将该路径的值硬编码为 *nix 适当的值。在 Windows 中使用这些硬编码路径不会解析为正确的二进制文件。由于我们依赖于 path 属性,因此此配置在 Windows 和 *nix 中都可以使用!

关于angularjs - 当我使用 Windows 平台时,有没有办法用 Protractor 进行 headless 测试?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23966072/

相关文章:

带有广度优先搜索的 JavaScript 二叉树

angularjs - NgDocs Provider 怎么用呢?

python - Selenium:从日历中选择日期

java - 未显示所有值

javascript - 通过执行 javascript 在 python 中使用 selenium webdriver 隐藏元素

java - 没有属性的 CSS 选择器 - Selenium Webdriver - Java

angularjs - Protractor 测试失败,因为添加 ng-if 指令后出现 ElementNotVisibleError

javascript - Protractor - 在给定端口上启动 Selenium 服务器

angularjs - 选择 ng-repeat 复选框 Selenium

angularjs - 如何在不使用 jQuery 的情况下获取指令中的元素 css?