La cattura del logcat di Appium non è rioutput: spawn ENOENT (nessun spazio nel path)

Ecco la mia configuration: Appium 1.3.7 su Windows, dispositivo Android vero con 4.1.2, Eclipse, TestNG. Percorso SDK senza spazi . Esempio di calcolo del calcolatore

DesiredCapabilities capabilities = new DesiredCapabilities(); capabilities.setCapability("BROWSER_NAME", "Chrome"); capabilities.setCapability("automationName", "Selendroid"); capabilities.setCapability("platformVersion", "4.1.2"); capabilities.setCapability("deviceName","0123456789ABCDEF"); capabilities.setCapability("platformName","Android"); capabilities.setCapability("appPackage", "com.android.calculator2"); capabilities.setCapability("appActivity","com.android.calculator2.Calculator); 

Nota:

  • Custom ArrayAdapter: perché ottengo un NullPointerException?
  • Come esplorare SD di android emulator in Windows senza Eclipse?
  • Spostamento di MapFragment (SurfaceView) causa sfarfallio di background nero
  • Come si ottiene / imposta il volume dei media (spotify) e TTS in Android?
  • MediaPlayer riproduce audio in background e riproduce uno successivo
  • Gradle: DefaultAndroidSourceDirectorySet a File con il metodo toString () è stato deprecato
    1. Rimozione delle capabilities.setCapability("BROWSER_NAME", "Chrome"); la linea non cambia nulla
    2. Il path SDK viene aggiunto nella variabile PATH, quindi funziona senza impostare la variabile ANDROID_HOME

    Ecco l'output del server:

     > info: Welcome to Appium v1.3.7 (REV 72fbfaa116d3d9f6a862600ee99cf02f6d0e2182) > info: Appium REST http interface listener started on 127.0.0.1:4723 > info: [debug] Non-default server args: {"address":"127.0.0.1","logNoColors":true,"platformName":"Android","platformVersion":"16","automationName":"Selendroid"} > info: Console LogLevel: debug > info: --> POST /wd/hub/session {"desiredCapabilities":{"appPackage":"com.android.calculator2","appActivity":"com.android.calculator2.Calculator","BROWSER_NAME":"Chrome","platformVersion":"4.1.2","automationName":"Selendroid","platformName":"Android","deviceName":"0123456789ABCDEF"}} > info: Client User-Agent string: Apache-HttpClient/4.3.6 (java 1.5) > info: [debug] The following desired capabilities were provided, but not receachzed by appium. They will be passed on to any other services running on this server. : BROWSER_NAME > info: [debug] Didn't get app but did get Android package, will attempt to launch it on the device > info: [debug] Creating new appium session 623f7324-87ac-493e-9df3-2ce7f6742ab8 > info: [debug] Starting selendroid server > info: [debug] Getting Java version > info: Java version is: 1.8.0_45 > info: [debug] Checking whether adb is present > warn: The ANDROID_HOME environment variable is not set to the Android SDK root directory path. ANDROID_HOME is required for compatibility with SDK 23+. Checking along PATH for adb. > info: [debug] executing cmd: where adb > info: [debug] Using adb from D:\Android\android-sdk\platform-tools\adb.exe > > info: [debug] Checking whether selendroid is built yet > info: [debug] Selendroid server exists! > info: [debug] Using fast reset? true > info: [debug] Preparing device for session > info: [debug] Not checking whether app is present since we are assuming it's already on the device > info: Retrieving device > info: [debug] Trying to find a connected android device > info: [debug] Getting connected devices... > info: [debug] executing cmd: "D:\Android\android-sdk\platform-tools\adb.exe" devices > info: [debug] 1 device(s) connected > info: Found device 0123456789ABCDEF > info: [debug] Setting device id to 0123456789ABCDEF > info: [debug] Waiting for device to be ready and to respond to shell commands (timeout = 5) > info: [debug] executing cmd: "D:\Android\android-sdk\platform-tools\adb.exe" -s 0123456789ABCDEF wait-for-device > info: [debug] executing cmd: "D:\Android\android-sdk\platform-tools\adb.exe" -s 0123456789ABCDEF shell "echo 'ready'" > info: [debug] Starting logcat capture > error: Logcat capture failed: spawn ENOENT > info: [debug] Cleaning up appium session > error: Failed to start an Appium session, err was: Error: spawn ENOENT > info: [debug] Error: spawn ENOENT > at errnoException (child_process.js:988:11) > at Process.ChildProcess._handle.onexit (child_process.js:779:34) > info: [debug] Responding to client with error: {"status":33,"value":{"message":"A new session could not be created. (Original error: spawn ENOENT)","code":"ENOENT","errno":"ENOENT","syscall":"spawn","origValue":"spawn ENOENT"},"sessionId":null} > info: <-- POST /wd/hub/session 500 331.069 ms - 197 

    Qualche idea?

  • Backup SharedPreferences in Android?
  • WebView.loadUrl (url) non fa nulla
  • Puoi utilizzare WatchViewStub in un GridViewPager per Android Wear?
  • Che cosa è "object record di attività" in Android?
  • Plugin PhoneGap 3: esecuzione () chiamata al plugin sconosciuto "..."
  • Come misurare il consumo VRAM su Android?
  • 3 Solutions collect form web for “La cattura del logcat di Appium non è rioutput: spawn ENOENT (nessun spazio nel path)”

    Sospetto che tu inserisci il path sbagliato all'interno del PATH e / e ANDROID_HOME. Hai ricevuto l'avviso

     warn: The ANDROID_HOME environment variable is not set to the Android SDK root directory path. ANDROID_HOME is required for compatibility with SDK 23+. Checking along PATH for adb. 

    Assicurati che il PATH e / o ANDROID_HOME contenga D:\Android\android-sdk ma non D:\Android\android-sdk\platform-tools

    Il mio problema è stato risolto dopo l'aggiunta di path Android SDK in Appium UI> Android> Impostazione scheda avanzata.

    Ho avuto lo stesso problema su MacOS. Ho passato Appium l'ANDROID_HOME come parametro JVM ma ho ancora ricevuto l'avvertimento per quanto riguarda ANDROID_HOME non è stato impostato.

    Tuttavia, risolverlo, ha aiutato a trovare il path corretto per risolvere il problema, ma nel mio caso ho anche dovuto installare i build-tools eseguendo $ ANDROID_HOME / tools / android command e selezionando una delle versioni build-tools.

    L'Android è un fan Android di Google, tutto su telefoni Android, Android Wear, Android Dev e applicazioni Android Games e così via.