Disclaimer: MashTips is supported by its audience. When you purchase through links on our site, we may earn an affiliate commission at no extra cost to you.

HomeCodeHow to get System OS, Browser and Version using Java and Selenium...

How to get System OS, Browser and Version using Java and Selenium WebDriver

This is to get browser name and browser version with Selenium Web driver. This will return browser name and version name like Firefox 29, Internet Explorer 08, Chrome 35.

This is done with javascript and selenium web driver to display the version number. OSDetector returns Operating system name for Windows, MAC, Linux and Solaris.

Related: 10 Best Text Editors for Windows, Linux and Mac.

Detect OS, Browser and Version using Java and Selenium WebDriver


import org.openqa.selenium.Capabilities;
import org.openqa.selenium.JavascriptExecutor;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.remote.RemoteWebDriver;

public class BrowserVersion {
private static WebDriver browserDriver;

public static String getBrowserAndVersion() {
String browser_version = null;
Capabilities cap = ((RemoteWebDriver) browserDriver).getCapabilities();
String browsername = cap.getBrowserName();
// This block to find out IE Version number
if (“internet explorer”.equalsIgnoreCase(browsername)) {
String uAgent = (String) ((JavascriptExecutor) browserDriver).executeScript(“return navigator.userAgent;”);
System.out.println(uAgent);
//uAgent return as “MSIE 8.0 Windows” for IE8
if (uAgent.contains(“MSIE”) && uAgent.contains(“Windows”)) {
browser_version = uAgent.substring(uAgent.indexOf(“MSIE”)+5, uAgent.indexOf(“Windows”)-2);
} else if (uAgent.contains(“Trident/7.0”)) {
browser_version = “11.0”;
} else {
browser_version = “0.0”;
}
} else
{
//Browser version for Firefox and Chrome
browser_version = cap.getVersion();// .split(“.”)[0];
}
String browserversion = browser_version.substring(0, browser_version.indexOf(“.”));
return browsername + ” ” + browserversion;
}

public static String OSDetector () {
String os = System.getProperty(“os.name”).toLowerCase();
if (os.contains(“win”)) {
return “Windows”;
} else if (os.contains(“nux”) || os.contains(“nix”)) {
return “Linux”;
}else if (os.contains(“mac”)) {
return “Mac”;
}else if (os.contains(“sunos”)) {
return “Solaris”;
}else {
return “Other”;
}
}
}

4 COMMENTS

  1. Use simple code for getting browser version
    C# selenium -:

    ICapabilities capabilities = ((RemoteWebDriver)driver).Capabilities;
    strBrowserVersion = capabilities.Version.ToString();
    if (strBrowserVersion == "")
    {
    strBrowserVersion = capabilities.GetCapability("browserVersion").ToString();
    }

  2. When I declare “private static WebDriver browserDriver;”.It’s giving null pointer exception in “Capabilities cap = ((RemoteWebDriver) browserDriver).getCapabilities()” this line.When I debug the code the browserDriver is showing as null.That’s why it is giving that exception.Can anyOne help me?

Leave a Reply

This site uses Akismet to reduce spam. Learn how your comment data is processed.

Free Newsletter

Related Articles

%d bloggers like this: