Tag: selenium webdriver

在nightwatch.js中设置代理

我在Node.js应用程序中使用nightwatch.js编写集成testing。 对于特定的testing用例,我希望通过proxy连接夜间手表。 什么是正确的方法来做到这一点? 我从官方文档或Google集团找不到任何东西。 Selenium文档build议按照此处所述将其设置在webdriver实例上。 我不知道如何通过守夜做到这一点。

获取浏览器的当前url

在Selenium Nodejs中,我如何获取正在testing的页面的当前url(testing脚本正在运行的那一刻,假设网页最初已被redirect)

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 […]

Selenium Webdriver(node.js)截图并保存testing结果

我开始开发一个网站应用程序的testing,我有一些问题。 我使用的是Node.js,webdriver,chromedriver和selenium rc。 问题是:1.如何制作截图并将其保存在与脚本相同的文件夹中。 2.有没有办法保存testing用例的testing日志? 例如,如果检查页面上的一个元素,但没有find它,那么我该如何输出?

如何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' } ); […]

使用selenium-webdriver和phantomjs在nodejs中设置用户代理

我需要更改我的PhantomJS浏览器的用户代理,它驱动着selenium-webdriver。 我find了在C#,Ruby和Java中更改用户代理的方法 这是我试过的: var webdriver = require('selenium-webdriver'); var useragent = "Mozilla/5.0 (Windows NT 6.1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/41.0.2228.0"; var driver = new webdriver.Builder(). withCapabilities(webdriver.Capabilities.phantomjs("phantomjs.page.settings.userAgent", useragent)). build(); Mozilla/5.0 (Windows NT 6.2; WOW64) AppleWebKit/534.34 (KHTML, like Gecko) PhantomJS/1.9.7 Safari/534.34

向Selenium Webdriver网格发出并行请求

我试图使用selenium服务器网格并行运行多个命令。 这是我的第一个testing代码: var webdriver = require('selenium-webdriver'); for(var u = 0; u < 3; u++) { makeScreenshot('foo/test' + u + '.png'); } function makeScreenshot(path) { var driver = new webdriver.Builder().forBrowser('firefox').usingServer('http://someurl:44111/wd/hub/').build(); console.log('Get'); driver.get('http://www.somepage.com').then(function() { console.log('Screenshot'); driver.takeScreenshot().then(function(data){ console.log(path); //var decodedImage = new Buffer(data, 'base64') driver.quit(); }); }); } 结果是: Get Get Get Screenshot foo/test0.png Screenshot foo/test1.png Screenshot foo/test2.png […]

量angular器无法parsingconf.js

我正在使用量angular器为e2etesting我的angular应用程序,但得到: TypeError:调用“量angular器conf.js”时,对象#没有方法“parsing” 这里是conf文件的内容: exports.config = { seleniumAddress: 'http://localhost:4444/wd/hub', capabilities: { 'browserName': 'chrome' }, specs: ['HomePageCtrl_spec.js'], chromeOnly: true, jasmineNodeOpts: { onComplete: null, isVerbose: false, showColors: true, includeStackTrace: true } }; 这里是我正在运行这个命令的例外: E:\eCOIGit\sidhome\SidHome\SidHome.Tests\ng-test-e2e>protractor Conf.js 错误: C:\ Users \ xqwt \ AppData \ Roaming \ npm \ node_modules \ protractor \ node_modules \ q \ q.js:12 6 throw […]

WebDriverJs的资源?

我知道有以下资源: http://docs.seleniumhq.org/docs/03_webdriver.jsp https://code.google.com/p/selenium/wiki/WebDriverJs 但我想知道是否有一个WebDriverJs的整个API的网站。 我在哪里可以find可用的方法和具体参数发送? 类似于: http : //rubydoc.info/gems/watir-webdriver/frames