java - 如何使用 Selenium 3.3.1 获取 Safari 10 主要版本号?

标签 java macos selenium safari version

我正在开发一个 Java 工具,使用 Selenium 3.3.1 在 MacOS Sierra 上自动化 Safari 10.x。 我创建 SafariDriver 并获取 Safari 版本的代码如下:

DesiredCapabilities createCap = DesiredCapabilities.safari();
// some more options
WebDriver driver = new SafariDriver(createCap);
// do other tasks
//....
// try several ways to get version (displayed on About dialog is 10.0.1 (12602.2.14.x)
Capabilities newCap = ((RemoteWebDriver) driver).getCapabilities();
System.out.println("Version: " + newCap.getVersion());  

Object capVersion = newCap.getCapability("version");
System.out.println("Other way: " + capVersion.toString());

以上两种方法的结果都是“12602.2.14.x”。

如何获得确切的版本“10.0.1”?

最佳答案

尝试使用以下内容:

JavascriptExecutor js = (JavascriptExecutor) driver;
System.out.println(js.executeScript("return navigator.userAgent",""));

你会得到一个字符串;您可以在其中查明您的浏览器详细信息并将其提取。

关于java - 如何使用 Selenium 3.3.1 获取 Safari 10 主要版本号?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43486060/

相关文章:

macos - 使用不同的命令行参数/参数关闭和启动

java - 从断言中获取日志消息

python - PhantomJS 返回空网页(python,Selenium)

java - 使用 WebDriver 在 Android 上测试 Google Chrome

java - Hibernate validator 自定义约束取决于基类

macos - Mac 命令行工具 11.4 不再有 svn

java - 我可以在 onPostexecute 中使用 setImageResource 吗?

macos - 重启机器时避免容器关闭

java - 为多个变量调用相同方法的更简单方法

java - 删除 ListView 页脚单击监听器