Tag: selenium

从WebDriverJS确定会话ID

我试图在浏览器上运行WebDriverJS,但是文档在如何控制主机浏览器方面有些模糊。 在这里,它说: 启动一个浏览器来对另一个浏览器运行一个WebDrivertesting是多余的(与简单地使用节点相比)。 相反,在浏览器中使用WebDriverJS旨在自动执行实际运行脚本的浏览器。 只要服务器的URL和浏览器的会话ID是已知的,就可以完成。 尽pipe这些值可能会直接传递给构build器,但也可以使用wdurl和wdsid“环境variables”来定义这些值,这些variables是从加载页面的URL查询数据中parsing出来的: <!– Assuming HTML URL is /test.html?wdurl=http://localhost:4444/wd/hub&wdsid=foo1234 –> <!DOCTYPE html> <script src="webdriver.js"></script> <input id="input" type="text"/> <script> // Attaches to the server and session controlling this browser. var driver = new webdriver.Builder().build(); var input = driver.findElement(webdriver.By.tagName('input')); input.sendKeys('foo bar baz').then(function() { assertEquals('foo bar baz', document.getElementById('input').value); }); </script> 我想从Node.js打开我的testing页面,然后运行包含在客户端脚本中的命令。 但是,我不知道如何能够提取会话ID(wdsid查询参数),当我build立会议。 有人有什么主意吗?

节点selenium-webdriver“错误:超时等待WebDriver服务器在”

在按照WebDriverJs文档的“入门”部分中的说明以及从其站点运行此片段之后: var driver = new webdriver.Builder(). withCapabilities(webdriver.Capabilities.chrome()). build(); driver.get('http://www.google.com'); driver.findElement(webdriver.By.name('q')).sendKeys('webdriver'); driver.findElement(webdriver.By.name('btnG')).click(); driver.wait(function() { return driver.getTitle().then(function(title) { return title === 'webdriver – Google Search'; }); }, 1000); driver.quit(); 我得到这个错误: Error: Timed out waiting for the WebDriver server at http://XXX.XXX.X.XXX:60065/ at <anonymous> at <anonymous> at <anonymous> at <anonymous> at <anonymous> at <anonymous> at <anonymous> at <anonymous> at […]

获取错误,而尝试运行seleniumwebdriver的示例testing

我试图在位于“\ node_modules \ selenium-webdriver \ example”的文件“google_search_test.js”中运行示例testing。 我正在使用webdriverjs,并且只在我的系统中安装了npm包“selenium-webdriver”。 我已经移动到命令提示符下的path位置并运行命令 node google_search_test.js 我收到如下错误, 错误说明: Path\node_modules\selenium-webdriver\example>node google_search_test.js Path\node_modules\selenium-webdriver\testing\index.js:184 exports.describe.skip = global.describe.skip; ^ TypeError: Cannot read property 'skip' of undefined at Object.<anonymous> (C:\Users\kanasra\Desktop\Jaguars\Automation Testing\N odeJs\node_modules\selenium-webdriver\testing\index.js:184:40) at Module._compile (module.js:456:26) at Object.Module._extensions..js (module.js:474:10) at Module.load (module.js:356:32) at Function.Module._load (module.js:312:12) at Module.require (module.js:364:17) at require (module.js:380:17) at Object.<anonymous> (C:\Users\kanasra\Desktop\Jaguars\Automation Testing\N odeJs\node_modules\selenium-webdriver\example\google_search_test.js:24:12) at […]

ChromeOptions使用Selenium ChromeDriver for node.js导致引用错误

我正在尝试使用Chrome的ChromeDriver驱动程序来运行一些使用Chrome的testing,但是当我使用ChromeOptions时候出现了一个引用错误。 我的代码 我想强制使用某些选项,例如针对特定的用户configuration文件进行testing。 基于Selenium和ChromeDriver文档,这是我的文件test.js : opt = new chromeOptions(); // ERROR OCCURS HERE! opt.setBinary("C:\\Program Files (x86)\\Google\\Chrome\\Application\\chrome.exe"); opt.addArguments("–user-data-dir=C:\\Users\\MyUserAccount\\AppData\\Local\\Google\\Chrome\\User Data"); driver = new ChromeDriver(opt); // rest of my script goes here 错误 我使用命令node test.js执行此操作。 这将在第一行中引发以下错误: \path\to\test.js:1 ction (exports, require, module, __filename, __dirname) { opt = new chromeOpti ^ ReferenceError: chromeOptions is not defined at Object.<anonymous> (\path\to\test.js:1:73) at […]

拒绝连接! selenium服务器启动了

我inheritance了一个没有文档的项目。 这是一个sails.js应用程序。 有一小组unit testing和一个端到端的testing。 当我尝试使用grunt运行端到端testing时。 我得到: $ grunt e2e Running "nightwatch" task started – PID: 5440 >> Executing "default" tests (standalone) [Index] Test Suite ================== Running: Should clean the collection removing 0 places >> Connection refused! Is selenium server started? 我不知道我可能会错过什么。 这让我坚持了一个多星期。 该项目有一个selenium服务器独立-2.40.0.jar在咕night声夜表。 所以我把这个PID是selenium服务器启动的。 如果我先启动jar(外面的咕噜声)我得到 $ grunt e2e org.openqa.grid.selenium.GridLauncher main INFO: Launching a standalone server […]

使用Selenium JS Chrome Webdriver时出错

我喜欢使用Selenium chromewebdriver来testing应用程序。 我从这个教程开始: https : //code.google.com/p/selenium/wiki/WebDriverJs#Getting_Started 我下载了最新的webdriver并将其添加到path中,然后尝试执行您在开始时看到的示例代码。 我将代码添加到脚本,并试图用> node script.js执行它,并得到以下错误信息: undefined:1178 vlog(2, () => this + ' scheduling notifications', this); ^ SyntaxError: Unexpected token ) at goog.loadModuleFromSource_ (C:\nodescripts\node_modules\selenium-webdriver\lib\goog\base.js:1123:19) at Object.goog.loadModule (C:\nodescripts\node_modules\selenium-webdriver\lib\goog\base.js:1085:46) at C:\nodescripts\node_modules\selenium-webdriver\lib\webdriver\promise.js:1:6 at Object.exports.runInContext (vm.js:64:17) at Object.Context.closure.goog.retrieveAndExecModule_ (C:\nodescripts\node_modules\selenium-webdriver\_base.js:135:8) at <anonymous>:1:6 at Object.exports.runInContext (vm.js:64:17) at Context.closure.closure.vm.createContext.CLOSURE_IMPORT_SCRIPT (C:\nodescripts\node_modules\selenium-webdriver\_base.js:104:12) at Object.goog.importScript_ (C:\nodescripts\node_modules\selenium-webdriver\lib\goog\base.js:879:9) at Object.goog.importModule_ (C:\nodescripts\node_modules\selenium-webdriver\lib\goog\base.js:900:14)

是否有完整的Selenium Webdriver的NodeJS文档?

我似乎没有find任何东西,唯一一个我总是find这个: https : //code.google.com/p/selenium/wiki/WebDriverJs 但它更多是一个指导。 不是所有function的文档。 它缺less例如Webdriver.Window的文档,或者像getWindowHandles()

Gulp量angular器:seleniumwebdriver退出状态1

我一直在使用Bangular (一个优秀的MEAN堆栈Yeoman生成器)来创build一个项目,一切都很顺利,直到我做了最近一系列的npm项目更新。 现在在我的项目上(也在他们的项目上),我在运行他们的gulp量angular器任务(过去工作正常)时出现错误。 我已经包括完整的输出作为参考,以防万一它有帮助 – 错误是下降一半(滚动代码框): Jamess-MacBook-Pro:test jamessherry$ gulp e2e [10:05:48] Using gulpfile ~/sites/test/gulpfile.js [10:05:48] Starting 'sass'… [10:05:48] Finished 'sass' after 30 ms [10:05:48] Starting 'inject'… [10:05:48] gulp-inject 7 files into index.html. [10:05:48] gulp-inject 11 files into index.html. [10:05:48] Finished 'inject' after 80 ms [10:05:48] Starting 'watch'… [10:05:48] Finished 'watch' after 27 ms [10:05:48] Starting […]

检查元素是否存在 – selenium / javascript / node-js

我试图检查是否存在一个元素之前,我可以执行此行: driver.findElement(webdriver.By.id('test')); 如果文档中不存在id test ,即使在try block中,也会抛出“没有这样的元素”的错误。 我find了Java的答案,在那里你可以检查大小是否为0,但在node-js这会引发错误,然后才能检查大小。 throw error; ^ NoSuchElementError: no such element

错误:在遵循angularjs官方教程的同时找不到chromedriver

起初我必须说这是我第一次接触angularjs和node.js,所以这可能是一个愚蠢的问题,但我想学习使用angularjs,所以我按照这个教程https://docs.angularjs.org/教程和一切都如预期,直到我跑到端到端testing部分。 当我运行这个命令时: npm run update-webdriver 它说: selenium standalone is up to date. chromedriver is up to date. 然后我打开本地服务器: npm start 而它的运行,我运行testing: npm run protractor 在我的terminal结果如下:o 直接使用ChromeDriver … [启动]错误:找不到在/ home / qw / www /angular-phonecat/node_modules/protractor/selenium/chromedriver.exe的chromedriver 钍文件chromedriver.exe真的不存在(有chromedriver_2.10.zip),我真的不认为一个.exe文件应该在那里,考虑使用Ubuntu的14.04(本教程是angular的版本是1.4.0)。 这是一个Windows版本的tuto吗? 任何人都可以帮助我(初学者可以理解:))?