2015-10-20 32 views

回答

0

认沽以下,那么至少你的单元测试应该运行(我没有在我的项目特浓测试还)

test: override: - export TERM="dumb"; if [ -e ./gradlew ]; then ./gradlew test;else gradle test;fi - cp -r app/build/test-results/* $CIRCLE_TEST_REPORTS

最后一行复制了你的测试结果,以便CircleCI可以分析它们。请务必提供正确的路径/ build目录

参考CircleCI文档的详细信息和运行模拟器测试 - https://circleci.com/docs/android

1

是,CircleCI可以通过配置circle.yml

支持运行单元和咖啡测试

单元测试

test 
    ./gradlew test 

对于咖啡测试

咖啡吨EST序列是一个涉及多一点,因为你需要在Android模拟器运行这些测试。

test: 
    pre: 
    # start the emulator 
    - emulator -avd circleci-android22 -no-audio -no-window: 
    background: true 
    parallel: true 
    # wait for it to have booted 
    - circle-android wait-for-boot 
    # unlock the emulator screen 
    - sleep 30 
    - adb shell input keyevent 82 

    override: 
    # run tests against the emulator. 
    - ./gradlew connectedAndroidTest -PdisablePreDex 
+0

我想你建议什么,但我遇到了错误https://circleci.com/gh/adityam7/PopularMovies/21是链接到我的CircleCI建在那里的失败 –

+0

单元测试注意事项,文档: _测试Android项目 首先:如果您在存储库的根目录中有一个Gradle包装,我们将自动运行./gradlew test._ https://circleci.com /docs/1.0/android/#testing-android-projects –

1

我得到了我CircleCI建立同时运行咖啡和单元测试下面是我circle.yml文件

general: 
artifacts: 
    - /home/ubuntu/PopularMovies/app/build/outputs/apk/ 

machine: 
environment: 
    ANDROID_HOME: /usr/local/android-sdk-linux 

dependencies: 
    override: 
     - echo y | android update sdk --no-ui --all --filter tools,platform-tools,android-23,extra-android-m2repository,extra-google-m2repository,extra-google-google_play_services,extra-android-support 
    - echo y | android update sdk --no-ui --all --filter build-tools-23.0.3 

test: 
    override: 

    # perform unit tests 
    - ./gradlew tesMockDebugUnitTest 
    # Save test reports 
    - mkdir -p $CIRCLE_TEST_REPORTS/reports/unit-tests 
    - cp -avr app/build/reports/tests/mockDebug/ $CIRCLE_TEST_REPORTS/reports/unit-tests 
    - mkdir -p $CIRCLE_TEST_REPORTS/junit/ 
    - find . -type f -regex ".*/build/test-results/mockDebug/.*xml" -exec cp {} $CIRCLE_TEST_REPORTS/junit/ \; 

    # start the emulator 
    - emulator -avd circleci-android22 -no-audio -no-window: 
     background: true 
     parallel: true 
    # wait for it to have booted 
    - circle-android wait-for-boot 
    # unlock the emulator screen 
    - sleep 30 
    - adb shell input keyevent 82 
    # run tests against the emulator. 
    - ./gradlew connectedMockDebugAndroidTest -PdisablePreDex 
    # Copying the test reports 
    - mkdir -p $CIRCLE_TEST_REPORTS/reports/functional-tests 
    - cp -avr app/build/reports/androidTests/connected/flavors/MOCK/ $CIRCLE_TEST_REPORTS/reports/functional-tests 

您可以查看我的CircleCI建立在https://circleci.com/gh/adityam7/PopularMovies/25

我希望这有助于