Selenium WebDriverJs无法使用iOS创建新客户端
Selenium WebDriverJs is unable to create a new client with iOS
我正在尝试在iOS浏览器中使用Selenium WebDriverJS。不幸的是,这不起作用,因为我需要它做。
我已经设置了"iWebDriver"项目,就像在iPhoneDriver的wiki页面上描述的那样。我已经复制了python脚本,它成功了。即使是一个小的nodeJS项目也能工作,但当我尝试从浏览器运行它时,Firefox会给我以下错误消息。
错误:无法为此浏览器创建新客户端。尚未定义WebDriver会话ID。
我试图运行的代码:
var driver = new webdriver.Builder().
usingServer('http://localhost:3001/wd/hub').
withCapabilities({'browserName': 'iPhone'}).
build();
driver.get('http://www.google.com');
driver.quit();
我已经编译了webdriverjs,就像在WebDriverJsWiki页面上描述的那样。是的,webdriver.js已经加载;(
所以我深入研究了一下,我想我有了一个解决方案。这似乎是一个破解,但对于firefox来说,到目前为止,我正在制作的firefox扩展运行得非常好。
我编辑了webdriver.js
文件的webdriver.Builder.prototype.build
作为
webdriver.Builder.prototype.build = function() {
var a;
// if(webdriver.FirefoxDomExecutor.isAvailable()) {
// return a = new webdriver.FirefoxDomExecutor, webdriver.WebDriver.createSession(a, this.getCapabilities())
// }
a = new webdriver.http.CorsClient(this.getServerUrl());
a = new webdriver.http.Executor(a);
// if(this.getSession()) {
// return webdriver.WebDriver.attachToSession(a, this.getSession())
// }
// throw Error("Unable to create a new client for this browser. The WebDriver session ID has not been defined.");
return webdriver.WebDriver.createSession(a, this.getCapabilities());
};
基本上,我强迫它创建一个会话,不确定为什么需要FirefoxDomExecutor
,因为它在firefox和chrome上运行得很好,而且我做了一些更改。不管怎样,谢谢你让我走上正轨,希望这能帮助其他人。
WebDriverJS似乎无法在Node.js.中运行时创建新会话
您必须手动创建一个会话,并为WebDriverJS提供会话id作为wdsidGET参数(例如urltowebdriver.html?wdsid=someID&wdurl=localhost:9000
(。
相关文章:
- 创建一个类似链接的按钮,并通过Javascript函数打开一个新的弹出窗口
- 如何在JS中创建类似于iOS主屏幕的分页效果
- 使用jqplot和html css和js在ios xcode上创建饼图的问题
- webkitAudioContext在iOS Safari上创建MediaElementSource不工作
- 在 ios 应用加速器中创建带有标签的复选框
- Cocos2d-js 在 PC 上创建 iOS 游戏
- Phonegap 3.0,Cordova CLI:创建ios子项目时出错
- 如何使用 JS 以编程方式为 Android/iOS 上的网站创建桌面快捷方式
- 为什么纸张.js路径创建在 iOS 设备上不起作用
- 创建和使用iOS设置.在PhoneGap中使用JavaScript绑定值
- 如何使用AngularJS创建移动应用程序(Android,IOS,Blockberry)
- 我如何用HTML和CSS创建Facebook iOS主屏幕的版本
- 如何使用HTML/Twitter Bootstrap/Jquery Mobile等创建简单的iOS类型的表视图
- 使用预先存在的数据库创建PhoneGap iOS应用程序
- 使用moment.js尝试在原生IOS日历中创建一个事件
- iOs和Android:用javascript在主屏幕上创建书签快捷方式
- 无法在cordova 2.4中创建phonegap ios插件
- Selenium WebDriverJs无法使用iOS创建新客户端
- Titanium-在iOS上创建AlertDialog,带有数字键盘的secure_text_input
- Cordova/Phonegap日历插件iOS创建事件