Tag: selenium

无法并行运行Selenium PhantomJS实例

我使用Selenium的node.js API来针对一系列网页运行PhantomJS实例。 我用来执行页面上的操作的代码工作正常,但似乎只有一个Selenium / PhantomJS实例可以运行在一个时间。 这个函数是从同一个模块中多次调用的,并且在分页处理客户端的networking商店中进行分页(这就是为什么我需要Selenium / PhantomJS环境 – 从每个页面提取数据)。 代码本身再次正常工作,但不能并行执行。 什么可能导致这个? module.exports = function (crawler, page, parsePage, done) { "use strict"; var _ = require("lodash"), format = require("util").format, path = require("path"), webdriver = require("selenium-webdriver"), By = webdriver.By, until = webdriver.until; var phantomPath = path.resolve(__dirname, "../node_modules/.bin/phantomjs"), isWin = process.platform === "win32"; var driver = new […]

使用nightwatch.js断言webelements列表的文本值

我是使用nightwatch.js的新手。 我想得到一个元素列表,并validation给定string的每个元素的文本值。 我努力了 : function iter(elems) { elems.value.forEach(function(element) { client.elementIdValue(element.ELEMENT) }) }; client.elements('css selector', 'button.my-button.to-iterate', iter); 对于另一个stackoverflow问题,但我现在使用的是 waitForElementPresent('elementcss', 5000).assert.containsText('elementcss','Hello') 它正在返回我的输出 Warn: WaitForElement found 5 elements for selector "elementcss". Only the first one will be checked. 所以我希望它应该validation列表的每个元素的文本值。

如何调整WebDriverJS浏览器窗口的大小?

我使用WebDriver的JavaScript绑定WebDriverJS来做一些简单的前端testing(由nodejs驱动)。 不过,我在调整窗口的时候遇到了一些困难,而且文档对我来说还是有点不清楚。 var webdriver = require('selenium-wedriver'); driver = new webdriver.Builder() .withCapabilities(webdriver.Capabilities.chrome()) .build(); driver.get("http://www.google.com") .then(function() { driver.Window.setSize(400, 400); // <– should resize, does nothing }) // more thenables… 一切工作正常,并没有错误,但浏览器窗口不会resize。 我是否错误地引用了这个setSize方法?

selenium:滚动到页面结尾

selenium 我是webdriverJS的新手。 我已经在Java中尝试了这个评价 Long repaeted = 0l, scrollHeight = 0l, returnHeight = 0l; while(true){ if (repaeted == 0) { returnHeight = (Long) jse.executeScript("var scroll =document.documentElement.scrollHeight;window.scrollTo(0, scroll); return scroll;"); System.out.println("Height : "+scrollHeight +"\t Chnage : "+returnHeight+ "\t Repeated : "+repaeted); scrollHeight = returnHeight; }else { returnHeight = (Long) jse.executeScript("var scroll = document.documentElement.scrollHeight;window.scrollTo(0, scroll); return scroll;"); System.out.println("Height […]

什么是安装selenium-webdriver与NodeJS + Selenium + Mocha(在Windows上)的理想位置?

什么是安装selenium-webdriver与NodeJS + Selenium + Mocha (在Windows上)的理想位置? 我刚开始用Selenium来开发NodeJS。 outlook未来,我将与NodeJS + Selenium + Mocha合作 安装了node.js : C:\Users\AtechM_03>node -v v6.11.2 安装npm : C:\Users\AtechM_03>npm -v 3.10.10 按照http://www.nodeclipse.org/updates/configurationnodeclipse ,我的Project结构如下所示: 现在,我不知道安装selenium-webdriver的确切位置 根据( http://www.nodeclipse.org/updates/ )在默认位置安装selenium-webdriver (通过命令行) C:\Users\AtechM_03>npm install selenium-webdriver C:\Users\AtechM_03 `– selenium-webdriver@3.5.0 +– jszip@3.1.3 | +– core-js@2.3.0 | +– es6-promise@3.0.2 | +– lie@3.1.1 | | `– immediate@3.0.6 | +– pako@1.0.5 | `– […]

使用Nightwatch.js上传图片文件

我使用Chrome驱动程序使用nightwatch.js来运行前端testing。 我需要testing图像上传工作是否正常,大概是通过提供的文件input,因为有成功的post上运行的callback。 我知道这可以使用Selenium Web Driver的sendKeys方法完成。 你怎么能使用javascript和nightwatch.js完成这个? 你可以访问Selenium的WebDriver或与它的接口?

摩卡和Selenium有什么不同?

我开始使用Node.js并正在寻找一个testing框架。 我发现 : 摩卡 selenium 我明白,与摩卡一个人可以用JS编写testing,而使用Selenium时,必须使用C#等低级语言编写testing。 除此之外,Seochaium可以做到摩卡不能做的事情吗? 摩卡有什么用途?

我可以在nightwatch.js中创build可重复使用的testing步骤吗?

我期待在我的nightwatch.jstesting中创build可重用的组件。 即。 login到Web应用程序,注销Web应用程序 以可重复使用的方式创build这些步骤的最佳方法/模式是什么?

selenium/ WebdriverIO Chrome无头?

使用Chrome在无头模式下使用Selenium / WebdriverIO进行自动浏览器testing有可能吗? 据说铬 – 无头是现在的事情,但我无法得到他们的例子工作。 我希望Selenium有这个select吗? 我正在初始化WebdriverIO像这样: const WebdriverIO = require('webdriverio'); let driver = WebdriverIO.remote({ desiredCapabilities: { browserName: browser, // "chrome" or "firefox" }, }); 我开始使用selenium独立selenium : selenium-standalone start > /dev/null 2>&1

使用Selenium在节点上的WebDriverJs进行屏幕截图的正确语法

使用Selenium的webdriverjs运行webdrivertesting时,截取屏幕截图的正确方法是什么? 我已经启动了独立的selenium服务器,我可以看到在selenium服务器上logging截图的命令,但屏幕截图没有被保存。 我的代码如下: var webdriver = require('selenium-webdriver'); var driver = new webdriver.Builder().usingServer('http://localURL:4444/wd/hub').withCapabilities({'browserName': 'chrome'}).build(); driver.get([URL to webserver on my local machine]) driver.takeScreenshot("c:\\selenium_local_map\\out1.png");