with Android Studio, Gradle, Espresso, Robolectric, AndroidAnnotations, RoboCoP, JaCoCo
Wishes, improvements and discussions about the stuff here are welcome
- Android Studio 0.8.1
- Gradle Build Tools 0.12.+
- Gradle 1.12
until next release of novodes test plugin with this pull request , we use our own custom version
For gradle-android-test-plugin:0.9.9-SNAPSHOT run Scripts/install-custom-gradle-test-plugin.sh
clone, attach phone (or start emulator), run Scripts/run-tests.sh
from project root
import to android studio, start development, press play
This project template support AndroidStudio.
Run tests in Android Studio need some configuration: see wiki for description
unit tests: ./gradlew :AppUnitTests:testDebug
- append
:AppUnitTests:jacocoTestReport
for coverage report
component tests: ./gradlew :AppComponentTests:testDebug
- append `:AppComponentTests:jacocoTestReport for coverage report
acceptance tests: ./gradlew :App:connectedAndroidTest
- replace by
:App:connectedCheck
for coverage report
Currently RestActivity example fails when no server is reachable.
- start
Script/start-wiremock.sh
- kill
Script/start-wiremock.sh kill
- build/index.html (should collect all reports, current is miss the AndroidSample module reports)
- AppUnitTests/build/test-report/debug/index.html (unit test)
- AppUnitTests/build/reports/jacoco/test/html/index.html (unit test coverage)
- AppComponentTests/build/test-report/debug/index.html (component test)
- AppComponentTests/build/reports/jacoco/test/html/index.html (component test coverage)
- App/build/reports/androidTests/connected/index.html (acceptance tests)
- App/build/reports/coverage/debug/index.html (acceptance tests coverage)
- Gradle + AndroidStudio as development Enironment
- Use novoda/gradle-android-test-plugin to use Robolectric in submodule
- Robolectric for unit tests
- Mockito
- Code coverage with JaCoCo
- Code coverage with Teamcity
- Robolectric for component tests
- Code coverage with JaCoCo
- Code coverage with Teamcity
- FEST Android assertions
- Espresso for acceptance tests
- AndroidAnnotations generate dependency injection
- RoboCoP generate database management
- Shortcut: jump between test and implementation with default short cut
- Travis CI runs all test variants
- Coveralls shows unit test code coverage coveralls-gradle-plugin
- run-tests.sh execute all test variants
- run-tests-fast.sh execute just the robolectric tests
- run-tests-travis.sh do all steps necessary for full automatic builds, like install custom dependencies