Bitrise Android Sample

Bitrise status

This is a sample Android project that demonstrates a multi-module project CI/CD setup on Bitrise. Build history is publicly available here.

Project setup and config

The project consists of the following modules:

  • :feature:example1: An Android library module
  • :feature:example2: Another Android library module
  • :lib-example: A pure Java/Kotlin module without any Android dependency
  • :app: The main app module, having explicit dependencies on the above modules

Bitrise Workflow

primary Workflow

Workflow steps

Primary workflow

This workflow runs unit tests in every module. The Android Unit Test step discovers tests in every Android module, and exports test results both as build artifacts and for the Test Reports add-on.

For pure Java/Kotlin modules, a Gradle Runner step is used to run the :lib-example:test Gradle task. Test results are exported via the Custom test results step. This step collects the JUnit test result XML from the module's build folder, and makes the report available via the Test Reports add-on.

Note: if your project doesn't have any pure Java/Kotlin modules, you can remove the Gradle Runner and Custom test results steps from your workflow. The Android Unit Test step takes care of testing Android modules.