如何使用带有ruby

时间:2018-01-15 13:25:57

标签: ruby google-chrome selenium selenium-webdriver appium

我正在尝试获取我正在执行移动自动化网络测试的设备上安装的任何Chrome版本的版本号。

目前我有:

desired_caps = {
    caps: {
        platformName: 'Android',
        versionNumber: '7.0',
        deviceName: 'S7 Edge',
        device: "Android",
        browserName: "Chrome"
    }
}

@driver = Appium::Driver.new(desired_caps).start_driver
@driver.get('https://www.google.com')
puts @driver.capabilities.version

但是这会返回一个空字符串。我了解有一个名为“版本”的功能,但将其添加到version: 'latest'等功能只返回'latest'而不是设备上安装的Chrome版本。

有什么想法吗?

1 个答案:

答案 0 :(得分:2)

使用Chrome,您可以尝试导航到chrome://version/并解析数字:

driver.get("chrome://version/")
puts driver.execute_script("return document.querySelector('td span').innerText")

> 62.0.3202.89

您还可以从User-Agent

直接获取版本
version = driver.execute_script("return navigator.userAgent.match('Chrome/[^ ]+')[0]")
puts version

> Chrome/62.0.3202.89