问题标签 [firefox-marionette]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
1641 浏览

ruby - 使用 Selenium WebDriver 和 Ruby 获取浏览器版本

尝试在不进行系统调用的情况下提取浏览器版本。下面是我的 Ruby 代码。

执行后没有任何内容返回到终端。

0 投票
4 回答
1400 浏览

selenium - Geb:如何使用 Marionette 代替 selenium Webdriver?

已知问题是,Firefox 版本 47.0.1 与 Selenium 最新版本不兼容。甚至 Firefox 也宣布改用 Marionette。有人可以详细说明如何将 Marionette 与 Geb 一起使用吗?

作为一个 maven 项目,我用 Geb 尝试了所有版本的 Selenium,但未能成功。我尝试了以下版本;

2.50.0

2.50.1

2.51.0

2.52.0

2.53.0

2.53.1

2.6.0

2.7.0

2.8.0

2.9.0

如果这不是问这个问题的正确地方,请指导我。

0 投票
2 回答
1238 浏览

selenium-webdriver - java.lang.NoClassDefFoundError 当我为 FF 47.0.1 运行 Marionette 驱动程序时

我第一次使用 Marionette 驱动程序,当我运行测试时,浏览器窗口打开,它访问了 test(code) 中指定的 URL,但它没有在文本字段中输入任何文本并引发以下错误。??

java.lang.NoClassDefFoundError: org/openqa/selenium/internal/HasIdentity at java.lang.ClassLoader.defineClass1(Native Method) at java.lang.ClassLoader.defineClass(Unknown Source) at java.security.SecureClassLoader.defineClass(Unknown Source ) at java.net.URLClassLoader.defineClass(Unknown Source) at java.net.URLClassLoader.access$100(Unknown Source) at java.net.URLClassLoader$1.run(Unknown Source) at java.net.URLClassLoader$1.run(Unknown Source) at java.security.AccessController.doPrivileged(Native Method) at java.net.URLClassLoader.findClass(Unknown Source) at java.lang.ClassLoader.loadClass(Unknown Source) at sun.misc.Launcher$AppClassLoader.loadClass(Unknown来源)在 org.openqa.selenium 的 java.lang.ClassLoader.loadClass(Unknown Source)。remote.internal.JsonToWebElementConverter.newRemoteWebElement(JsonToWebElementConverter.java:77) at org.openqa.selenium.remote.internal.JsonToWebElementConverter.apply(JsonToWebElementConverter.java:57) at org.openqa.selenium.remote.RemoteWebDriver.execute(RemoteWebDriver. java:653) 在 org.openqa.selenium.remote.RemoteWebDriver.findElementByCssSelector(RemoteWebDriver.java:492) 在 org.openqa.selenium.remote 的 org.openqa.selenium.remote.RemoteWebDriver.findElement(RemoteWebDriver.java:363) .RemoteWebDriver.findElementById(RemoteWebDriver.java:415) 在 org.openqa.selenium.By$ById.findElement(By.java:214) 在 org.openqa.selenium.remote.RemoteWebDriver.findElement(RemoteWebDriver.java:355) 在sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 在 sun.reflect。NativeMethodAccessorImpl.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) at java.lang.reflect.Method.invoke(Unknown Source) at org.openqa.selenium.support.events.EventFiringWebDriver$2.invoke(EventFiringWebDriver .java:101) 在 com.sun.proxy.$Proxy19.findElement(Unknown Source) 在 org.openqa.selenium.support.events.EventFiringWebDriver.findElement(EventFiringWebDriver.java:184) 在 com.pearson.itautomation.bca。 Browser$WaitForElementFunction.apply(Browser.java:64) at com.pearson.itautomation.bca.Browser$WaitForElementFunction.apply(Browser.java:48) at org.openqa.selenium.support.ui.FluentWait.until(FluentWait. java:208) 在 com.pearson.itautomation.bca.Browser.getElementWithWait(Browser.java:307) 在 com.pearson.itautomation.bca。com.pearson.itautomation.bca.BrowserAction.performWithStates(BrowserAction.java:104) com.pearson.itautomation.bca.BrowserAction.performWithStates(BrowserAction.java:80) 的交互.SendTextToElementAction.perform(SendTextToElementAction.java:64)在 pearson.ePortfolio.Actions.CommonActions.edTPALogin(CommonActions.java:181) 在 TestCases_PSP.SendTaskLevelFeedbackRequest.TaskFeedbackRequest(SendTaskLevelFeedbackRequest.java:64) 在 sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 在 sun.reflect.NativeMethodAccessorImpl.invoke (Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) at java.lang.reflect.Method.invoke(Unknown Source) at org.testng.internal.MethodInvocationHelper.invokeMethod(MethodInvocationHelper.java:84) at org.testng.internal.Invoker.invokeMethod(Invoker.java:714) at org.testng.internal.Invoker.invokeTestMethod(Invoker.java:901) at org.testng.internal.Invoker.invokeTestMethods(Invoker.java:1231) at org .testng.internal.TestMethodWorker.invokeTestMethods(TestMethodWorker.java:127) 在 org.testng.internal.TestMethodWorker.run(TestMethodWorker.java:111) 在 org.testng.TestRunner.privateRun(TestRunner.java:767) 在 org. testng.TestRunner.run(TestRunner.java:617) at org.testng.SuiteRunner.runTest(SuiteRunner.java:334) at org.testng.SuiteRunner.runSequentially(SuiteRunner.java:329) at org.testng.SuiteRunner.privateRun (SuiteRunner.java:291) 在 org.testng.SuiteRunner.run(SuiteRunner.java:240) 在 org.testng.SuiteRunnerWorker.runSuite(SuiteRunnerWorker.java:52) 在 org.testng.SuiteRunnerWorker.run(SuiteRunnerWorker.java:86) at org.testng.TestNG.runSuitesSequentially(TestNG.java:1224) at org.testng.TestNG.runSuitesLocally(TestNG.java:1149) at org.testng.TestNG.run (TestNG.java:1057) 在 org.testng.remote.RemoteTestNG.run(RemoteTestNG.java:111) 在 org.testng.remote.RemoteTestNG.initAndRun(RemoteTestNG.java:204) 在 org.testng.remote.RemoteTestNG。 main(RemoteTestNG.java:175) 引起:java.lang.ClassNotFoundException: org.openqa.selenium.internal.HasIdentity at java.net.URLClassLoader$1.run(Unknown Source) at java.net.URLClassLoader$1.run(Unknown源)在 java.security.AccessController.doPrivileged(Native Method) 在 java.net.URLClassLoader.findClass(Unknown Source) 在 java.lang.ClassLoader。loadClass(Unknown Source) at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source) at java.lang.ClassLoader.loadClass(Unknown Source) ... 60 更多

FF 浏览器版本:47.0.1 selenium-java :2.52.0

0 投票
1 回答
2982 浏览

java - Selenium 3 - Marionette - 自定义 Firefox 配置文件

我遇到了一个关于 selenium 3 自动化 ui 测试的大问题。首先,我澄清一下我是如何使用 selenium 2.x 在 Firefox 46 上运行 selenium 测试的:

现在,我读到 Firefox 48 不再支持 webdriver,并移至Marionette webdriver。好的,所以我下载了带有相应geckodriver的 Selenium 3 beta并再次启动了上述工作流程 - 它工作但:

我的网站使用自签名 ssl 证书。好的,这在以前的带有 webdriver 的 selenium 版本中没有问题,我可以创建一个自定义的 firefox 配置文件并通过附加firefoxProfileTemplate标志来使用它。Selenium 3 与 Marionette 驱动程序的问题是,该标志不再存在。

那么如何从命令行指定打开firefox时应该使用的firefox配置文件?有新的选择吗?或者也许是某个地方的全局配置文件?

问候-

0 投票
1 回答
103 浏览

selenium-webdriver - firefox sdk,marionette:断言该项目存在于上下文菜单中

我正在开发一个基本的 firefox 插件,我想测试上下文菜单中是否存在某个项目(在页面上的任意位置单击鼠标右键后显示)。

我已经看到我可以使用marionetteselenium-webdriver我找不到一种方法来单击页面上的任何位置并断言给定项目存在于上下文菜单中。

我很难简单地单击鼠标右键(甚至不谈论检查项目是否在上下文菜单中......)。

根据有关ActionSequence我应该使用click并提供右键单击的文档。我无法让它工作。这是我到目前为止尝试过的

0 投票
1 回答
1113 浏览

c# - Selenium - FireFox/Marionette 驱动程序不等待。直到

自从更新到 Marionette 驱动程序。Firefox 不再等待。基本上我希望它登录,等待页面加载,然后通过在页面上找到“注销”来检查它是否已登录。这是我的设置

发生的事情是在它点击登录之后,它没有等待页面加载,所以它会抛出一个错误,因为它找不到“注销”

我强调该代码适用于较旧的 Firefox 驱动程序(不是 Marionette)和 Chrome 的驱动程序。还有其他人遇到新的 Firefox 驱动程序不等待的问题吗?

抱歉,我应该更清楚一点,Firefox 驱动程序没有进行任何等待,因此等待现有元素也不起作用

0 投票
1 回答
5502 浏览

selenium - 对于 Selenium 测试人员,使用 Marionette FirefoxDriver 而不是旧的 Selenium FirefoxDriver 有什么好处?

上周有很多关于这个名为 Marionette 的新 FirefoxDriver 的噪音。要将 Firefox 与 Selenium 一起使用,我们曾经使用“旧”的 Selenium FirefoxDriver。从 Firefox 48.0 开始,将需要使用 Mozilla 开发的这个新的 FirefoxDriver。

我知道需要改变方向以使每个浏览器都支持和开发其驱动程序,并使驱动程序独立于 Selenium。此外,如果 Mozilla 开发自己的驱动程序,应该会更快、更容易地解决问题和开发功能。

我的问题是,对于那些使用 Selenium 框架创建自动化测试的人,使用 Marionette 代替“旧”的 Selenium 支持的 FirefoxDriver 有什么好处吗?_(比如更好的性能,更好的兼容性...)

0 投票
1 回答
9137 浏览

selenium-webdriver - WebDriverException: Message: Missing 'marionetteProtocol' field in handshake

I'm currently trying to run a robotframework test scripts locally (Ubuntu 12.04 LTS 64 bit). The issue that I faced was not able to launch FF browser in Open Browser. Below is the details/specs of the setup that I have.

  • Firefox (v26.0)
  • Selenium2Library
  • selenium-server-standalone-2.53.1.jar
  • geckodriver-v0.9.0

Please note that I used same machine as hub and node (selenium grid)

Here the command to launch my hub :

While here's the command to register my node :

I did what is per told in https://developer.mozilla.org/en-US/docs/Mozilla/QA/Marionette/WebDriver (add wires executable in the PATH)

I also did :

As a result, the FF browser launch, but not opening the URL ${HOMEPAGE}. I've been googling around and stuck in this issue for so long. Please help..

0 投票
2 回答
1012 浏览

selenium - Selenium - 使用带有 Marionette 驱动程序的便携式 Firefox 48

如何将 marionetteDriver 与 FF 48 便携式设备一起使用?我知道它如何与已安装的 Firefox 48 一起工作:

和 Firefox 最多可移植 46 个:

但是,当我想使用便携式 Firefox 48 时,我该怎么办?

0 投票
0 回答
797 浏览

c# - 自 Firefox 48 起,MoveToElement 不再起作用

自从引入 Marionette webdriver 以来,我已经看到人们遇到了这个问题,但仍然找不到我的东西的解决方案。基本上我需要悬停一个元素,然后单击第一个元素包含的另一个元素。但是自从新的 Marionette webdriver 之后,这条线在 Firefox 中就不再起作用了

使用 ChromeDriver 可以毫无问题地执行这些行,但是使用 Firefox 我总是在第二行出现错误:

WebDriver.dll 中出现“System.NotImplementedException”类型的未处理异常

附加信息:POST /session/105178c5-3084-4b67-96a6-24045a61628d/moveto 与已知命令不匹配

我在 C# 中使用 Selenium Webdriver,有人想出解决悬停问题的方法吗?