2017-03-28 198 views
1

我想用特拉維斯-CI測試集成測試。我有YML:用特拉維斯測試咖啡

language: android 

jdk: oraclejdk8 

sudo: false 

android: 
    components: 
    - platform-tools 
    - tools 
    - build-tools-25.0.2 
    - android-25 
    - sys-img-armeabi-v7a-android-22 

    #Extras 
    - extra-android-m2repository 
    - extra-google-m2repository 
    - extra-android-m2repository 

before_script:  
    - android list targets 
    - echo no | android create avd --force -n test -t android-22 --abi armeabi-v7a 
    - emulator -avd test -no-skin -no-audio -no-window & 
    - android-wait-for-emulator 
    - adb shell input keyevent 82 & 

script: 
    - ./gradlew test 
    - ./gradlew connectedAndroidTest 
script: "./travis-build.sh" 

這應該工作,但是我總是得到:

錯誤:目標ID無效。使用'android list targets'來獲取目標ID。

我不知道如何解決這個問題?

任何幫助表示讚賞

+0

你下載的Android' -25',但通過'android-22'作爲目標我想要模擬器 –

+0

好的。我會盡力讓你知道 –

回答

1

舊VM only include platforms up to android-21(與sudo: false使用),請嘗試this

language: android 

jdk: oraclejdk8 

sudo: false 

android: 
    components: 
    - platform-tools 
    - tools 
    - build-tools-25.0.2 
    - android-22 # Android platform used by your alternative emulator 
    - android-25 
    - sys-img-armeabi-v7a-android-22 

    #Extras 
    - extra-android-m2repository 
    - extra-google-m2repository # Removed duplicated component 

before_script:  
    - android list targets 
    - echo no | android create avd --force -n test -t android-22 --abi armeabi-v7a 
    - emulator -avd test -no-skin -no-audio -no-window & 
    - android-wait-for-emulator 
    - adb shell input keyevent 82 & 

script: 
    - ./gradlew test 
    - ./gradlew connectedAndroidTest 
script: "./travis-build.sh"