灿CircleCI做Android项目单位/咖啡测试?
问题描述:
我们使用CircleCI我们的Android项目。我想知道CircleCI是否可以支持单元测试/意式浓缩咖啡测试。我无法在互联网上找到太多有用的信息。在circle.yml灿CircleCI做Android项目单位/咖啡测试?
答
认沽以下,那么至少你的单元测试应该运行(我没有在我的项目特浓测试还)
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
答
是,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
答
我得到了我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
我希望这有助于
我想你建议什么,但我遇到了错误https://circleci.com/gh/adityam7/PopularMovies/21是链接到我的CircleCI建在那里的失败 –
单元测试注意事项,文档: _测试Android项目 首先:如果您在存储库的根目录中有一个Gradle包装,我们将自动运行./gradlew test._ https://circleci.com /docs/1.0/android/#testing-android-projects –