【问题标题】:Could not start a website in android emulator with capybara, appium, ruby无法在带有 capybara、appium、ruby 的 android 模拟器中启动网站
【发布时间】:2016-07-09 00:36:28
【问题描述】:

我尝试在 chrome 和原生 android 浏览器(模拟 Android 5.0 和 6)中打开一个网站来检查几个项目。 每次我运行测试时,选择的浏览器都会启动,并且在 url 字段中保持“数据:”,顺便说一下,实际的选项卡也会加载两次。

我知道有一种方法可以使用 selenium webdriver 来做到这一点,但这对我来说不是正确的方法,因为我使用了几个模拟设备的以下代码来测试这个网站并在 iOS/Mac osx 上它的工作。 所以为什么不在安卓上。我测试这个网站的方法是使用 capybara、appium 和 ruby​​。

在 iOS 上存在一个

:safariInitialUrl =>'http://www.mypage.com'

上限。 但不适用于安卓。 所以,我的问题是:如何在不使用 selenium webdriver 的情况下在模拟的 android 设备上启动我的网站。

代码:

Capybara.register_driver :androidphone do |app|

capabilities = {
:deviceName => 'nex5_5', 
:avd => 'nex5_5', 
:browserName => 'Chrome', 
:platformVersion => '5.0', 
:platformName => 'Android', 
:automationName => 'Appium',
}

url = "http://localhost:4723/wd/hub"

appium_lib_options = {
server_url: url
}

all_options = {
appium_lib: appium_lib_options,
caps: capabilities,
}

Appium::Capybara::Driver.new app, all_options

【问题讨论】:

    标签: android ruby capybara driver appium


    【解决方案1】:

    您必须在配置文件中添加这一行: 出口.config = { 直接连接:假, }

    我认为您还必须在配置文件中添加超时,例如,如果您使用 jasmine 框架,请添加以下代码:

     jasmineNodeOpts: {
            defaultTimeoutInterval: 30000
        }
    

    【讨论】:

      猜你喜欢
      • 2015-06-19
      • 2016-02-25
      • 2015-06-07
      • 1970-01-01
      • 2017-03-24
      • 1970-01-01
      • 2017-10-31
      • 2012-09-29
      相关资源
      最近更新 更多