jasmine - 使用 Protractor 启动并运行 Marionette/Geckodriver

标签 jasmine protractor selenium-firefoxdriver firefox-marionette geckodriver

所以我在 FireFox 中运行 Protractor/Jasmine 测试时遇到了问题。我已经意识到 FireFox 的版本问题不支持 Selenium Angular/Bootstrap 等,这一直是我迄今为止的问题。

我被告知要尝试 geckodriver,但确实找不到任何关于如何使用 Protractor 和 jasmine 进行设置的好资源。或者甚至哪个驱动程序最适合使用。

最近我尝试了以下方法来让 FF 恢复并运行(但都没有成功):

  • 将 FireFox 降级至 33.x.x,同时保留 Protractor/Jasmine 当前版本(分别为 4.0.5 和 2.51)。
  • 将 Protractor 降级至 3.0.0,同时将 FF 保持在当前版本 (47.0.1)
  • 将 Protractor 和 FF 降级至上述最低版本。
  • 使用了最新版本的 FF 47.0.1 和较低版本的 Protractor。
  • 使用了最新版本的 FF 47.0.1 和最新版本的 Protractor 4.0.5
  • 使用 directConnect: true 和 directConnet: false

所以我想现在我有两个问题之一: 1. 有人可以使用 geckodriver 发布 Protractor 配置片段/或指导我演练此内容。 2. 告诉我解决方法或工作解决方案(webdrivers/protractor/jasmine 的版本等)。

如果您需要查看错误或我的配置文件或任何其他内容,请简单发表评论,我很乐意修改。

最佳答案

有一段时间,由于 Firefox Web 驱动程序的更改,Firefox v46 和 Selenium v​​2.5x 之间存在不兼容的情况。这些问题很快就得到了社区的解决。

Protractor 的问题在于 webdriver-manager 的更新有点过时。根据 github 上的讨论,他们已经意识到了这一点,并且即将进行修复。

同时的解决方法是手动更新过时的部分。

这是你的操作方法,运行

webdriver-manager update

这将为您提供 webdriver-manager 为您处理的所有组件的路径。

导航到selenium-server-standalone.jar文件(在我的例子中是protractor/node_modules/webdriver-manager/selenium/selenium-server-standalone-2.53.1.jar)并将其替换为最新的selenium独立jar(任何 v3+ 都应该不错)。确保保留与之前的 jar 文件完全相同的文件名。 (链接:http://www.seleniumhq.org/download/)

重复此过程以获取最新的 Gecko 网络驱动程序。解压并替换当前版本。 (链接:https://github.com/mozilla/geckodriver/releases)

现在通过 Protractor 运行测试,您应该可以熟练使用最新版本的 Firefox。

祝你好运,测试愉快:)

关于jasmine - 使用 Protractor 启动并运行 Marionette/Geckodriver,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39412727/

相关文章:

javascript - 模拟 Angular 模型的 $http.put 结果 - 单元测试

javascript - 如何在webstorm中使用elementor插件

javascript - 如何编写一个 Protractor 测试来查找 'ng-repeat' 中的第一个元素?

javascript - Angular 服务在 spyOn 时变得未定义

javascript - 通过 ajax 调用在 componentDidMount 中正确设置测试状态

javascript - multiCapabilities 和 jasmine 重点测试

javascript - 具有单个元素的 grunt.file.readJSON

python - 如何在Python中获取geckodriver的绝对路径

selenium - 错误 : Can't find profile directory. console.warn: SearchSettings: "get: No settings file exists, new profile?"使用 GeckoDriver Firefox 和 Selenium

python - Selenium 在 Firefox 中使用过多的 RAM