找不到连接的Android设备

问题描述:

我无法启动android模拟器来运行我的自动化脚本。找不到连接的Android设备

但是我的自动化脚本在我使用emulator -avd Pixel_API_25 -port 5557/Android/sdk/tools目录手动启动android模拟器时起作用。

我想能够在我的自动化脚本中加载android模拟器。

请参阅下面我的env.rb文件。

require 'rubygems' 
require 'rspec/expectations' 
require 'selenium-webdriver' 
require 'pry' 
require 'appium_lib' 

APP_PATH = '/Users/shafiq.malik/Documents/Projects/nuff-class-booking- 
mobile/platforms/ios/build/emulator/HelloCordova.app' 

    desired_caps = { 
     caps: {:platformName => "Android", 
      :platformVersion => "7.1.1", 
      :deviceName => "Pixel_API_25", 
      :app => "/Users/shafiq.malik/Documents/Projects/nuff- 
      class-booking- 
      mobile/platforms/android/build/outputs/apk/android- 
      debug.apk", 
      :appPackage => "com.android.settings", 
      #:appActivity => ".Settings", 
      :browserName =>'' 
      } 

    } 

@driver = Appium::Driver.new(desired_caps).start_driver 
Appium.promote_appium_methods self.class 

def server_url 
    'http://localhost:8000/wd/hub' 
end 

有没有人有任何建议?

+0

你正在使用哪个appium版本?你是否尝试检查appium中的“启动AVD”选项?如果它不可用,你可以尝试添加'AVD'到你想要的功能并重新检查吗? –

尝试添加这到你想要的能力。您需要avd才能启动模拟器。

在java中 capabilities.setCapability("avd","AndroidTestDevice");

在红宝石的情况下,这两个中的任何一个。

  1. avd: "AndroidTestDevice",
      开始=>
    1. :avd => "AndroidTestDevice",

    你的期望上限应的东西看起来像这样

    desired_caps = { 
         caps: {:platformName => "Android", 
          :platformVersion => "7.1.1", 
          :deviceName => "Pixel_API_25", 
          :app => "/Users/shafiq.malik/Documents/Projects/nuff- 
          class-booking- 
          mobile/platforms/android/build/outputs/apk/android- 
          debug.apk", 
          :appPackage => "com.android.settings", 
          `:avd => "AndroidTestDevice",` 
          #:appActivity => ".Settings", 
          :browserName =>'' 
          } 
    
        } 
    

    在一个侧面说明,不要不要给根目录作为应用程序的文件路径。如果您使用的是CI,那么稍后可能会导致问题,而您只需指出一个通用代码即.apk.app/.ipa名称。

    +0

    神奇的是,带来了模拟器。我使用的是Android Studio中创建的设备,而不是'AndroidTestDevice'。然而,它不加载应用程序,并给我'原始错误:启动应用程序时出错。原始错误:用于启动应用程序的活动不存在或无法启动!确保它存在并且是一个可启动的活动(Selenium :: WebDriver :: Error :: UnknownError)'我怎样才能让应用程序弹出并使用应用程序? –

    +0

    btw,你有什么代码? 'APP_PATH ='/Users/shafiq.malik/Documents/Projects/nuff-class-booking- mobile/platforms/ios/build/emulator/HelloCordova.app''。考虑到你正在执行一个android测试 –

    +0

    是的,我想我能够测试一个android应用程序。 –