在 Java 中确定 Selenium 驱动程序的类型
Determine Type of Selenium Driver in Java
我正在为一些使用 selenium webdriver 的站点构建测试框架,我的目标是让多个驱动程序 运行 同时进行相同的测试(也称为 firefoxdriver、internetexplorerdriver 和chromedriver 所有 运行 同时具有一些共享资源)。但是,我无法记录哪个驱动程序正在做什么。我通过我的很多代码传递驱动程序,但据我所知,网络驱动程序不知道它是什么特定类型的驱动程序。有什么方法可以询问 webdriver 元素它被实例化为什么?
你可以使用instanceof
喜欢
if( driver instanceof FirefoxDriver) {
System.out.println("Firefox it is!!");
}
else if( driver instanceof ChromeDriver) {
System.out.println("Chrome it is!!");
}
// and so on
更多详情:What is the 'instanceof' operator used for?
/******************************************************************************************
* Name: getBrowserDetails | Description: Gets Browser Name and Version
******************************************************************************************/
public String getBrowserDetails() throws Exception {
Capabilities caps = ((RemoteWebDriver)BaseTest.driver).getCapabilities();
String browserName = caps.getBrowserName();
String browserVersion = caps.getVersion();
String browser = (browserName + " " + browserVersion).toUpperCase();
return browser;
}
如果使用 instanceof
,请务必同时考虑 org.openqa.selenium.WrapsDriver
以便处理 EventFiringWebDriver
。
我正在为一些使用 selenium webdriver 的站点构建测试框架,我的目标是让多个驱动程序 运行 同时进行相同的测试(也称为 firefoxdriver、internetexplorerdriver 和chromedriver 所有 运行 同时具有一些共享资源)。但是,我无法记录哪个驱动程序正在做什么。我通过我的很多代码传递驱动程序,但据我所知,网络驱动程序不知道它是什么特定类型的驱动程序。有什么方法可以询问 webdriver 元素它被实例化为什么?
你可以使用instanceof
喜欢
if( driver instanceof FirefoxDriver) {
System.out.println("Firefox it is!!");
}
else if( driver instanceof ChromeDriver) {
System.out.println("Chrome it is!!");
}
// and so on
更多详情:What is the 'instanceof' operator used for?
/******************************************************************************************
* Name: getBrowserDetails | Description: Gets Browser Name and Version
******************************************************************************************/
public String getBrowserDetails() throws Exception {
Capabilities caps = ((RemoteWebDriver)BaseTest.driver).getCapabilities();
String browserName = caps.getBrowserName();
String browserVersion = caps.getVersion();
String browser = (browserName + " " + browserVersion).toUpperCase();
return browser;
}
如果使用 instanceof
,请务必同时考虑 org.openqa.selenium.WrapsDriver
以便处理 EventFiringWebDriver
。