首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >无法与SafariDriver扩展建立连接

无法与SafariDriver扩展建立连接
EN

Stack Overflow用户
提问于 2014-10-28 15:46:15
回答 3查看 4.7K关注 0票数 1

我一直在一个使用量角器的AngularJS网络应用程序上运行AngularJS测试,在Chrome和Firefox上进行测试。在我的数组中添加safari时,将显示以下内容:

“无法与SafariDriver扩展建立连接”

我已经找到了一种在本地解决这个问题的方法,但是当我们使用Codeship来自动化我们的构建时,我需要一种解决方法,而不是手动将驱动程序添加到selenium并在Safari中启用。

我正在使用selenium 2.43.1

配置:

代码语言:javascript
复制
    exports.config = {
  baseUrl: 'http://localhost:9001',
  multiCapabilities: [{
    'browserName': 'chrome'
  }, {
    'browserName': 'firefox'
  }, {
    'browserName': 'safari'
  }],
  specs: ['e2e/app.js']
};

package.json:

代码语言:javascript
复制
    {
  "name": "livingthevalues",
  "version": "0.0.0",
  "dependencies": {
    "express": "^4.9.7",
    "gzippo": "^0.2.0",
    "bower": "^1.3.8",
    "grunt": "^0.4.5",
    "grunt-cli": "^0.1.13",
    "grunt-autoprefixer": "^0.7.3",
    "grunt-concurrent": "^0.5.0",
    "grunt-contrib-clean": "^0.5.0",
    "grunt-contrib-compass": "^0.7.2",
    "grunt-contrib-concat": "^0.4.0",
    "grunt-contrib-connect": "^0.7.1",
    "grunt-contrib-copy": "^0.5.0",
    "grunt-contrib-cssmin": "^0.9.0",
    "grunt-contrib-htmlmin": "^0.3.0",
    "grunt-contrib-imagemin": "^0.8.1",
    "grunt-contrib-jshint": "^0.10.0",
    "grunt-contrib-uglify": "^0.4.0",
    "grunt-contrib-watch": "^0.6.1",
    "grunt-filerev": "^0.2.1",
    "grunt-google-cdn": "^0.4.0",
    "grunt-newer": "^0.7.0",
    "grunt-ng-annotate": "^0.3.0",
    "grunt-svgmin": "^0.4.0",
    "grunt-usemin": "^2.1.1",
    "grunt-wiredep": "^1.7.0",
    "jshint-stylish": "^0.2.0",
    "load-grunt-tasks": "^0.4.0",
    "time-grunt": "^0.3.1"
  },
  "devDependencies": {
    "chai": "^1.9.2",
    "chai-as-promised": "^4.1.1",
    "cucumber": "^0.4.4",
    "grunt-karma": "^0.9.0",
    "grunt-protractor-runner": "^1.1.4",
    "karma": "^0.12.17",
    "karma-chrome-launcher": "^0.1.4",
    "karma-jasmine": "^0.1.5",
    "karma-junit-reporter": "^0.2.2",
    "karma-mocha": "^0.1.6",
    "karma-phantomjs-launcher": "^0.1.4",
    "protractor": "^1.3.1",
    "protractor-cucumber": "^0.1.2",
    "sinon": "^1.11.0"
  },
  "engines": {
    "node": ">=0.10.0"
  },
  "scripts": {
    "test": "grunt test",
    "pree2e": "./node_modules/protractor/bin/webdriver-manager update",
    "e2e": "grunt test:e2e"
  }
}

由ci:运行的命令

代码语言:javascript
复制
Exporting Environment
0 min 2 sec
git clone --branch 'commentBox' --depth 50 git@github.com:MyTeam/myrepo.git ~/src/github.com/MyTeam/myrepo
0 min 1 sec
cd clone
0 min 1 sec
git checkout -qf 2ec65e3b32971d0f7f9de948c40f019f0629adea
0 min 1 sec
Preparing Dependency Cache
0 min 10 sec
Preparing Virtual Machine
0 min 5 sec
rvm use 2.0.0-p195
0 min 5 sec
bundle install
0 min 2 sec
nvm install 0.10.25
0 min 2 sec
nvm use 0.10.25
0 min 1 sec
npm install
0 min 7 sec
bower instal
0 min 7 sec
npm test
0 min 10 sec
npm run e2e

谢谢--这似乎是一件很简单的事情,但却无法理解为什么它不起作用。

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2016-11-15 21:38:00

在Mac上,您以前必须安装的Selenium SafariDriver扩展现在已经折旧。在埃尔卡皮坦&塞拉,苹果提供了自己的安全河。卸载以前的safaridriver扩展(如果您已经安装了它)并启用新的safaridriver,摘自链接2:

  • 确保“开发”菜单可用。可以打开Safari首选项(菜单栏中的Safari> preferences ),转到Advanced选项卡,并确保选中菜单栏中的复选框。
  • 在“开发”菜单中启用远程自动化。这是通过开发>允许远程自动化在菜单栏中切换的。
  • 授权safaridriver启动承载本地web服务器的webdriverd服务。要允许这样做,请手动运行/usr/bin/safaridriver,并完成身份验证提示符。例如在终端:/usr/bin/safaridriver -p 8000

此外,您还需要运行硒3.0 + (支持从3.0.0到beta1 1开始)才能使用新的safari驱动程序。

注意:如果您仍然有困难,可以检查第二链接底部的增编。我遇到的另一个警告是,新的safaridriver只支持一个会话,因此不再支持maxSessions=#。另外,如果您使用npm硒-独立安装,您可以像这样更新selenium版本。

代码语言:javascript
复制
selenium-standalone install --version=3.0.1 --baseURL=https://selenium-release.storage.googleapis.com

然后使用--version=3.0.1标志引导集线器和节点。

票数 2
EN

Stack Overflow用户

发布于 2014-10-29 18:13:16

我正在努力解决这个问题,试图自动化我们对Safari 7.1的测试。到目前为止,我的研究让我相信,在Safari7.1中,已经建立了一个新的安全模型,以使扩展更加安全。这里是一个相关螺纹 fwiw。我尝试过使用mvn命令行来安装SafariDriver扩展,但它失败了。我尝试运行一个简单的命令行来打开Safari,并将扩展名作为参数,但随后会提示您启用/安装它。(对无人看管的流动没有好处)。另一个建议是直接进入Safari用于首选项/扩展的plist文件,但我在Mac10.10上找不到它。我很想知道这里的答案。

票数 2
EN

Stack Overflow用户

发布于 2016-04-18 12:59:44

我在用Windows 7。

先决条件:在Windows上安装Safari

  1. 转到http://docs.seleniumhq.org/download/
  2. 向下滚动->,转到"SafariDriver“部分并下载"SafariDriver.safariextz”
  3. 双击"SafariDriver.safariextz“(先前下载)
  4. Safari将打开一个弹出,其中包含“安装”按钮->单击安装按钮
  5. 现在转到Safari的首选项,您将看到安装了WebDriver (在我的例子中是WebDriver 2.48.0) (选中了启用WebDriver复选框)
  6. 现在是实例化SafariDriver并获得所需的URL的时候了,如下所示: WebDriver驱动=新的SafariDriver(); driver.get("https://www.packtpub.com/web-development/mastering-selenium-testing-tools-video");
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/26612601

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档