android - Watir-Webdriver 在 Android 设备上控制 Android ChromeDriver

标签 android selenium-webdriver webdriver watir-webdriver selenium-chromedriver

我下载了 ChromeDriver https://sites.google.com/a/chromium.org/chromedriver/downloads并将其放入我的 Android SDK 文件夹内的 platform-tools 文件夹中。我的手机已连接并且设置正确,当我运行 ./chromedriver 它说

$ ./chromedriver
Starting ChromeDriver 2.14.313457 (3d645c400edf2e2c500566c9aa096063e707c9cf) on port 9515
Only local connections are allowed.

但是,如何让 Watir 连接到它?我尝试了以下方法,但它只会打开本地桌面浏览器,而不是 Android 设备上的浏览器。

@browser = Watir::Browser.new(:remote, :url => "http://localhost:9515")

最佳答案

基于 ChromeDriver's Getting Started page for Android ,您需要指定 androidPackage Chrome 选项。

他们的例子在 Ruby 和 Watir 中的等价物是:

caps = Selenium::WebDriver::Remote::Capabilities.chrome(
  "chromeOptions" => { "androidPackage" => "com.android.chrome" }
)
@browser = Watir::Browser.new(
  :remote,
  :url => "http://localhost:9515",
  :desired_capabilities => caps
)

关于android - Watir-Webdriver 在 Android 设备上控制 Android ChromeDriver,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28848447/

相关文章:

java - 安卓错误 : Cannot perform this operation because the connection pool has been closed

android - 使用 Facebook 登录应用程序

xpath - 如何在 selenium webdriver 中获得 Xpath 计数

Node.js + mocha + webdriverjs : Failed tests kill suite

selenium-webdriver - 如何防止 FirefoxDriver 的日志记录?

android - 安卓工作室中的 "Native method not found"

android - DupelicateEntry,/DragAndDropPermissionCompat.class 问题

ruby - 我如何在 Ruby 中捕获此异常?

Java Selenium : how to read Network tab output during the test run?

c# - <HTML> <head> &lt;title&gt; selenium Firefox webdriver 为空的文本