Exception in thread “main” org.openqa.selenium.WebDriverException: f.QueryInterface is n
- khyati sehgal
- Aug 20, 2014
- 2 min read
In this blog post, I will share the resolution of an issue which is very general and often seen by Selenium developers.
Exception in thread "main" org.openqa.selenium.WebDriverException: f.QueryInterface is not a function
Build info: version: '2.41.0', revision: '3192d8a', time: '2018-03-27 17:17:32'
System info: host: 'ksehgal', ip: '192.168.0.131', os.name: 'Windows 7', os.arch: 'amd64', os.version: '6.1', java.version: '1.7.0_67'
Driver info: driver.version: unknown
Command duration or timeout: 393 milliseconds
Build info: version: '2.41.0', revision: '3192d8a', time: '2018-03-27 17:17:32'
System info: host: 'ksehgal', ip: '192.168.0.131', os.name: 'Windows 7', os.arch: 'amd64', os.version: '6.1', java.version: '1.7.0_67'
Session ID: dd968417-2f35-4ba3-b465-b59ac680892b
Driver info: org.openqa.selenium.remote.RemoteWebDriver
Capabilities [{platform=XP, javascriptEnabled=true, acceptSslCerts=true, browserName=firefox, rotatable=false, locationContextEnabled=true, webdriver.remote.sessionid=dd968417-2f35-4ba3-b465-b59ac680892b, version=29.0.1, databaseEnabled=true, cssSelectorsEnabled=true, handlesAlerts=true, browserConnectionEnabled=true, webStorageEnabled=true, nativeEvents=false, applicationCacheEnabled=true, takesScreenshot=true}]
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:57)
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
at java.lang.reflect.Constructor.newInstance(Constructor.java:526)
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:595)
at org.openqa.selenium.remote.RemoteWebDriver.get(RemoteWebDriver.java:300)
at remoteDriver.TestCapabilities.main(TestCapabilities.java:26)
Caused by: org.openqa.selenium.remote.ScreenshotException: Screen shot has been taken
Build info: version: '2.41.0', revision: '3192d8a', time: '2018-03-27 17:17:32'
System info: host: 'XXXX', ip: '192.168.0.131', os.name: 'Windows 7', os.arch: 'amd64', os.version: '6.1', java.version: '1.7.0_67'
Driver info: driver.version: RemoteWebDriver
at org.openqa.selenium.remote.ErrorHandler.throwIfResponseFailed(ErrorHandler.java:125)
... 3 more
Caused by: org.openqa.selenium.remote.ErrorHandler$UnknownServerException: f.QueryInterface is not a function
Build info: version: '2.41.0', revision: '3192d8a', time: '2018-03-27 17:17:32'
System info: host: 'ksehgal', ip: '192.168.0.131', os.name: 'Windows 7', os.arch: 'amd64', os.version: '6.1', java.version: '1.7.0_67'
Driver info: driver.version: unknown
Build info: version: '2.41.0', revision: '3192d8a', time: '2018-03-27 17:17:32'
System info: host: 'ksehgal', ip: '192.168.0.131', os.name: 'Windows 7', os.arch: 'amd64', os.version: '6.1', java.version: '1.7.0_67'
Driver info: driver.version: unknown
at .FirefoxDriver.prototype.get(file:///C:/Users/user/AppData/Local/Temp/anonymous7716954552955200023webdriver-profile/extensions/fxdriver@googlecode.com/components/driver_component.js:8768)
at .DelayedCommand.prototype.executeInternal_/h(file:///C:/Users/user/AppData/Local/Temp/anonymous7716954552955200023webdriver-profile/extensions/fxdriver@googlecode.com/components/command_processor.js:10884)
at .DelayedCommand.prototype.executeInternal_(file:///C:/Users/user/AppData/Local/Temp/anonymous7716954552955200023webdriver-profile/extensions/fxdriver@googlecode.com/components/command_processor.js:10889)
at .DelayedCommand.prototype.execute/<(file:///C:/Users/user/AppData/Local/Temp/anonymous7716954552955200023webdriver-profile/extensions/fxdriver@googlecode.com/components/command_processor.js:10831)
Solution:-
In the class where you are calling browser URL add basic protocols like HTTP, HTTPS, etc.
Calling a driver instance from a property file
@BeforeClass(alwaysRun = true)
@Parameters({ "browser" })
public void browserUpdate(@Optional("chrome") String browser) {
if (!commonProperty.getProperty("browser").isEmpty()) {
browse = commonProperty.getProperty("browser");
} else {
browse = browser;
}
}
Picking the URL to be called from config property
public static UserManagementPageObjects openUserPage() throws InterruptedException, IOException {
getDriver().get(property.getProperty("url_user"));
Loggers.info("User Management page opened");
return new UserManagementPageObjects(getDriver());
}
Config property file
url_user =https://testUrl.net/users-managment
Comments