Selenium - org.openqa.selenium.WebDriverException: f.QueryInterface is not a function

@Test public void myDriver() throws IOException, InterruptedException { FirefoxDriver myD = new FirefoxDriver(); String vkw, vxpath, vtestdata; long iWait = 1000000000; String[][] xTC, xTS; xTC = readxl("C:\\Selenium\\KDF.xls", "Test case"); xTS = readxl("C:\\Selenium\\KDF.xls", "Test steps"); for (int i = 1; i < xTC.length; i++) { if (xTC[i][3].equalsIgnoreCase("Y")) { System.out.println("Yes"); for (int k = 1; k < xTS.length; k++) { if (xTC[i][0].equalsIgnoreCase(xTS[k][1])) { vkw = xTS[k][4]; vxpath = xTS[k][5]; vtestdata = xTS[k][5]; /* if (vkw.equalsIgnoreCase("enter text")){ Fentertext(myD, vxpath, vtestdata); } */ if (vkw.equalsIgnoreCase("navigate browser")) { FnavigateBrowser(myD, vtestdata); } Thread.sleep(iWait); } } } } } 

 Error:- org.openqa.selenium.WebDriverException: f.QueryInterface is not a function Command duration or timeout: 144 milliseconds Build info: version: '2.39.0', revision: 'ff23eac', time: '2013-12-16 16:12:12' System info: host: 'del1-dhp-28988', ip: '172.16.45.14', os.name: 'Windows 7', os.arch: 'amd64', os.version: '6.1', java.version: '1.7.0_09' Session ID: 043a4dc7-520f-44a5-a74c-c6cb274d50b9 Driver info: org.openqa.selenium.firefox.FirefoxDriver Capabilities [{platform=XP, acceptSslCerts=true, javascriptEnabled=true, cssSelectorsEnabled=true, databaseEnabled=true, browserName=firefox, handlesAlerts=true, browserConnectionEnabled=true, webStorageEnabled=true, nativeEvents=true, rotatable=false, locationContextEnabled=true, applicationCacheEnabled=true, takesScreenshot=true, version=26.0}] at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) at sun.reflect.NativeConstructorAccessorImpl.newInstance(Unknown Source) at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(Unknown Source) at java.lang.reflect.Constructor.newInstance(Unknown Source) at org.openqa.selenium.remote.ErrorHandler.createThrowable(ErrorHandler.java:193) at org.openqa.selenium.remote.ErrorHandler.throwIfResponseFailed(ErrorHandler.java:145) at org.openqa.selenium.remote.RemoteWebDriver.execute(RemoteWebDriver.java:554) at org.openqa.selenium.remote.RemoteWebDriver.get(RemoteWebDriver.java:276) at org.openqa.selenium.remote.RemoteWebDriver$RemoteNavigation.to(RemoteWebDriver.java:800) at KDF3.FnavigateBrowser(KDF3.java:185) at KDF3.myDriver(KDF3.java:50) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) at java.lang.reflect.Method.invoke(Unknown Source) at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:44) at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:15) at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:41) at org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:20) at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:76) at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:50) at org.junit.runners.ParentRunner$3.run(ParentRunner.java:193) at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:52) at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:191) at org.junit.runners.ParentRunner.access$000(ParentRunner.java:42) at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:184) at org.junit.runners.ParentRunner.run(ParentRunner.java:236) at org.eclipse.jdt.internal.junit4.runner.JUnit4TestReference.run(JUnit4TestReference.java:50) at org.eclipse.jdt.internal.junit.runner.TestExecution.run(TestExecution.java:38) at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:467) at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:683) at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.run(RemoteTestRunner.java:390) at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.main(RemoteTestRunner.java:197) Caused by: org.openqa.selenium.remote.ErrorHandler$UnknownServerException: f.QueryInterface is not a function Build info: version: '2.39.0', revision: 'ff23eac', time: '2013-12-16 16:12:12' System info: host: 'del1-dhp-28988', ip: '172.16.45.14', os.name: 'Windows 7', os.arch: 'amd64', os.version: '6.1', java.version: '1.7.0_09' Driver info: driver.version: unknown at <anonymous class>.FirefoxDriver.prototype.get(file:///C:/Users/POORVA~1.SHA/AppData/Local/Temp/anonymous8563012586736156603webdriver-profile/extensions/ fxdriver@googlecode.com /components/driver_component.js:8720) at <anonymous class>.DelayedCommand.prototype.executeInternal_/h(file:///C:/Users/POORVA~1.SHA/AppData/Local/Temp/anonymous8563012586736156603webdriver-profile/extensions/ fxdriver@googlecode.com /components/command_processor.js:10831) at <anonymous class>.DelayedCommand.prototype.executeInternal_(file:///C:/Users/POORVA~1.SHA/AppData/Local/Temp/anonymous8563012586736156603webdriver-profile/extensions/ fxdriver@googlecode.com /components/command_processor.js:10836) at <anonymous class>.DelayedCommand.prototype.execute/<(file:///C:/Users/POORVA~1.SHA/AppData/Local/Temp/anonymous8563012586736156603webdriver-profile/extensions/ fxdriver@googlecode.com /components/command_processor.js:10778) 
+6
source share
6 answers

The error is called by the get webdriver method, which takes you to the URL you specify. Most likely your URL is skipping the protocol. So it would be foolish to assume that you pass url as www.example.com , but what you want to give is http://www.example.com

+57
source

The WebDriver api sends a RESTfull request to the Selenium server to execute the command. REST services use http or https for request / response. Therefore, when we call the URL without mentioning the protocol prefix (in our case http), an exception is thrown.

+3
source

I ran into this ruby ​​error on a rails web application when running function tests using rspec / capybara.

For me, this has been fixed by adding "/" to the front of the URL in the visit method.

so visit "your/test/path"

becomes visit "/your/test/path"

+3
source

org.openqa.selenium.WebDriverException: f.QueryInterface is not a function exception is due to a missing protocol. If you use a URL without a protocol (http or https), it throws an exception.

+2
source

Another possibility is that you accidentally forgot / deleted the require 'capybara/rails' in the test helper file in the Ruby on Rails project. Took me an hour to understand. Damn typos!

0
source

If the URL is f.queryInterface in quotation marks in the configuration file, it throws an exception f.queryInterface . Just remove the quotation marks for the url and it will work fine.

0
source

All Articles