Tag: selenium chromedriver

从chromedriver启动时修改标志

我使用webdriver( http://webdriver.io/ ),独立selenium,摩卡来写我的testing用例。 testing案例是特定于铬,所以我使用的是chromedriver。 在启动时,我想要禁用“touch-events”和“touch-optimized-ui”标志,否则我的testing用例将会失败。 每当chromedriver启动浏览器,它将从默认选项开始。 有谁能为我提供解决scheme吗? 什么可以添加到下面的代码来禁用这些标志? 或者也许有其他解决scheme? 示例代码: var webdriverjs = require('./webdriverjs/index'), assert = require('assert'); describe('my webdriverjs tests', function(){ this.timeout(99999999); var client = {}; before(function(done){ client = webdriverjs.remote({ desiredCapabilities: {browserName: 'chrome'} }); client.init(done); }); it('sample test',function(done) { client .url('http://localhost:3030/subset/index') .call(done) }); after(function(done) { client.end(done); }); });

量angular器+ Selenium Chrome Docker = WebDriverError:未知错误:Chrome无法启动:退出正常

我已经完成了本教程的所有内容http://www.protractortest.org/#/tutorial 和 https://github.com/angular/protractor-cookbook/tree/master/protractor-docker (我最近从sepereatedselenium毂和节点更改为https://hub.docker.com/r/selenium/standalone-chrome/ ) 我已经创build了一个protractor.config.js: exports.config = { framework: 'jasmine', seleniumAddress: 'http://localhost:4455/wd/hub', specs: ['../tests/protractor/spec.js'], } 我的testing里面的testing/量angular器/ spec.js // spec.js describe('Protractor Demo App', function() { it('should add one and two', function() { browser.get('http://juliemr.github.io/protractor-demo/'); element(by.model('first')).sendKeys(1); element(by.model('second')).sendKeys(2); element(by.id('gobutton')).click(); expect(element(by.binding('latest')).getText()). toEqual('5'); // This is wrong! }); }); 这些是我的selenium中枢和铬节点: docker run -d -p 4455:4444 –name selenium-hub selenium/hub:latest docker run […]

为什么会用`execvp`全新安装node.js和量angular器错误没有这样的文件或目录?

我已经安装了几个版本的node.js和量angular器,然后按照说明来更新webdriver,但没有一个组合我成功地启动了webdriver。 一些有用的细节: 在Ubuntu 64位 试了node.js v0.10.15和v0.10.26 测量量angular器0.18.1和0.19.0 以下是我运行的命令,以及相应的错误(安装量angular器后): $ webdriver-manager update Updating selenium standalone downloading https://selenium.googlecode.com/files/selenium-server-standalone-2.39.0.jar… Updating chromedriver downloading https://chromedriver.storage.googleapis.com/2.8/chromedriver_linux64.zip… chromedriver_2.8.zip downloaded to /home/<user>/.nvm/v0.10.26/lib/node_modules/protractor/selenium/chromedriver_2.8.zip selenium-server-standalone-2.39.0.jar downloaded to /home/<user>/.nvm/v0.10.26/lib/node_modules/protractor/selenium/selenium-server-standalone-2.39.0.jar $ webdriver-manager start execvp(): No such file or directory seleniumProcess.pid: 4567 events.js:72 throw er; // Unhandled 'error' event ^ Error: spawn ENOENT at errnoException (child_process.js:988:11) at Process.ChildProcess._handle.onexit […]

Selenium“NoSuchAlertError:no alert open”错误

在Selenium中,我点击一个button,出现一个警告框,我尝试接受警告框,但它给了我一个错误。 element.click(); driver.switchTo().alert().accept(); 这是非常不一致的…有时testing通过,有时它给了我错误… 该错误看起来像: NoSuchAlertError: no alert open (Session info: chrome=34.0.1847.131) (Driver info: chromedriver=2.9.248307,platform=Mac OS X 10.9.2 x86_64) at new bot.Error (/Users/kstrife/Desktop/experiments/seleniumNode/selenium-webdriver/lib/atoms/error.js:109:18) at Object.bot.response.checkResponse (/Users/kstrife/Desktop/experiments/seleniumNode/selenium-webdriver/lib/atoms/response.js:106:9) at /Users/kstrife/Desktop/experiments/seleniumNode/selenium-webdriver/lib/webdriver/webdriver.js:276:20 at /Users/kstrife/Desktop/experiments/seleniumNode/selenium-webdriver/lib/goog/base.js:1178:15 at webdriver.promise.ControlFlow.runInNewFrame_ (/Users/kstrife/Desktop/experiments/seleniumNode/selenium-webdriver/lib/webdriver/promise.js:1598:20) at notify (/Users/kstrife/Desktop/experiments/seleniumNode/selenium-webdriver/lib/webdriver/promise.js:428:12) at notifyAll (/Users/kstrife/Desktop/experiments/seleniumNode/selenium-webdriver/lib/webdriver/promise.js:397:7) at resolve (/Users/kstrife/Desktop/experiments/seleniumNode/selenium-webdriver/lib/webdriver/promise.js:375:7) at fulfill (/Users/kstrife/Desktop/experiments/seleniumNode/selenium-webdriver/lib/webdriver/promise.js:493:5) at /Users/kstrife/Desktop/experiments/seleniumNode/selenium-webdriver/lib/webdriver/promise.js:1465:10 at /Users/kstrife/Desktop/experiments/seleniumNode/selenium-webdriver/lib/goog/base.js:1178:15 at webdriver.promise.ControlFlow.runInNewFrame_ (/Users/kstrife/Desktop/experiments/seleniumNode/selenium-webdriver/lib/webdriver/promise.js:1598:20) at notify (/Users/kstrife/Desktop/experiments/seleniumNode/selenium-webdriver/lib/webdriver/promise.js:428:12) […]

为什么Chrome试图在Selenium下运行Chromedriver时无法启动?

所以我有一个Chromedriver /selenium设置工作之前,但现在试图安装在一台新的机器上(64Bit Linux)的一切,它给我的问题,并没有告诉我什么是绊倒。 我正在使用Selenium独立服务器版本2.37.0和nodejs以及Google上现有的最新版本的Chromedriver(我也尝试过之前版本的Chromedriver 2.0,结果相同)。 如下面的输出所示,当我尝试使用webdriver运行脚本时,出现以下错误: Caused by: org.openqa.selenium.WebDriverException: unknown error: Chrome failed to start: exited abnormally 。 我没有从chromedriver输出日志,只输出Selenium(带有错误)和Node.js(尝试运行testing脚本)。 任何人都可以给我一个我在做什么错误的想法吗? 编辑:我忘了补充说,在失败后有一个与Chromedriver运行的过程,所以这一块是好的,我的Chrome可执行文件确实在像Chromedriver希望它是在/ etc / bin /谷歌铬。 Output: 一旦我开始selenium运行,我试图运行一个简单的testing脚本的内容: var webdriverjs = require("webdriverjs"); var client = webdriverjs.remote({desiredCapabilities:{browserName:"chrome"}}); // to run in chrome client .init() .url("https://github.com/") .end(); 运行testing脚本的Node.js控制台输出如下所示: [1;33m=====================================================================================[0m Selenium 2.0/webdriver protocol bindings implementation with helper commands in […]

Node.js要求不将其存储到variables中

我有下面的代码片段,它在其上下文中工作。 "use strict"; require('chromedriver'); var selenium = require('selenium-webdriver'); var driver = new selenium.Builder() .forBrowser('chrome') .build(); 我不明白的是这一行: require('chromedriver'); 如果我删除它,我得到一个错误: Error: The ChromeDriver could not be found on the current PATH. Please download the latest version of the ChromeDriver from http://chromedriver.storage.googleapis.com/index.html and ensure it can be found on your PATH. 所以它做了一些事情。 我明白什么var chromedriver = require('chromedriver'); 并且我只看到了迄今为​​止使用的require函数。 所以我的问题关于行: […]

如何closuresChromeDriver服务?

我已经尝试了一段时间来尝试closuresChromeDriver服务,我不能开发如何解决scheme。 我正在做一个使用摩卡和柴的unit testing。 由于错误,第一次testing通过,第二次失败。 我试图寻找在seleniumwebdrive / chrome.js模块,并找不到一个函数来closures服务。 我试图寻找答案,但无法在网上find任何东西。 也许我的方法来创build铬驱动程序需要重新devise。 我尝试使用'selenium-webdriver / chrome.js'.getDefaultService()。isRunning()在if语句中包装服务的创build和默认服务的设置,但是第一次testing失败。 我很困惑,这很可能是由于缺乏知识。 这个被调用的块在每个unit testing中被调用 var service = new chrome.ServiceBuilder(chromePath).build(); chrome.setDefaultService(service); driver = new webdriver.Builder() .withCapabilities(webdriver.Capabilities.chrome()) .build(); 这是第一个没有错误地通过的unit testing it('Should pass if the Driver is set to equal the Chrome driver by using chrome', function() { var chromeDriver = Driver( { browserName: 'chrome' } ); […]

如何解决在OS X小牛失败的Chromedriver

我做了升级到OS X Mavericks的有趣的决定,现在我不能在我的机器上运行chromedriver … 一个简单的方法来复制这个是用NodeJS创build一个新的项目,然后安装wd包,然后按照他们的指导来运行testing(这个安装了selenium和chromedriver)。 wd: https : //github.com/admc/wd#run-the-tests 我觉得这是设置问题,但我甚至不知道从哪里开始…任何人有任何想法?

Selenium WebDriverJS,不能为Chrome构buildwebdriver

我在设置Selenium WebDriverJS时遇到了一些麻烦。 我的目标是使用Javascript(节点)在Chrome浏览器上运行seleniumtesting。 我遵循https://code.google.com/p/selenium/wiki/WebDriverJs以及https://code.google.com/p/chromedriver/wiki/GettingStarted上的说明 首先,我下载了一个chromedriver,并在terminal上运行它: $ ./chromedriver Starting ChromeDriver (v2.2) on port 9515 然后,我安装了selenium-webdriver: $ npm install selenium-webdriver npm http GET https://registry.npmjs.org/selenium-webdriver npm http 304 https://registry.npmjs.org/selenium-webdriver selenium-webdriver@2.35.0 node_modules/selenium-webdriver 然后,我开始了节点控制台,并试图构buildwebdriver实例 $ node > var webdriver = require('selenium-webdriver') undefined > var driver = new webdriver.Builder().usingServer('http://localhost:9515/wd/hub').withCapabilities(webdriver.Capabilities.chrome()).build(); undefined > timers.js:103 if (!process.listeners('uncaughtException').length) throw e; ^ UnknownCommandError: unknown command: wd/hub/session […]

通过要求('chromedriver).path直接到seleniumwebdriver

tl; dr: 有没有人知道如何通过chromedriver的pathselenium代码webdriver代码没有设置PATH环境variables? 我试图使用铬的seleniumwebdriver,但宁愿不物理安装chromedriver和操纵path。 我有以下代码: var webdriver = require('selenium-webdriver'); var driver = new webdriver.Builder(). withCapabilities(webdriver.Capabilities.chrome()). build(); 如果没有在path上设置的chromedriver,这会引发错误: Error: The ChromeDriver could not be found on the current PATH. Please download the latest version of the ChromeDriver from http://chromedriver.storage.googleapis.com/index.html and ensure it can be found on your PATH. 我宁愿不必设置我的path,所以我已经从npm安装了chromedriver,并添加到我的package.json: "scripts": { "preinstall-chromedriver": "npm install", "install-chromedriver": "node […]