1
/
5

【Android】Github ActionsでFirebase Test Labの実行を分散する【株式会社ライトコード】

弊社エンジニアの記事になります。

Github ActionsでFirebase Test Labの実行を分散する

今回はGithub ActionsでFirebase Test Labの実行を分散するステップの書き方を紹介したいと思います

基本の書き方

基本的にはFirebase Test Labの公式ドキュメントを見ながら書いてもらうのが良いと思います

下記は一例です

プルリクエストが作られた時に、アプリケーションをビルドしてTestLabに渡しています

name: ui-test

on:

  pull_request:



env:

  GOOGLE_PROJECT_ID: "{project_id}"

  RESULT_BUCKET: "{result_bucket}"



jobs:

  ui-test:

    runs-on: ubuntu-latest

    steps:

      - uses: actions/checkout@v3

      - uses: actions/setup-java@v3

        with:

          java-version: '{各自の環境で}'

      - name: Build

        run: |

          ./gradlew assembleDebug

          ./gradlew assembleDebugAndroidTest

      - uses: google-github-actions/setup-gcloud@v1

      - name: Login to Google Cloud

        run: |

          echo ${{ secrets.gcp用の認証鍵 }} | base64 -d > ${HOME}/gcloud-service-key.json

          gcloud auth activate-service-account --key-file=${HOME}/gcloud-service-key.json

          gcloud --quiet config set project ${GOOGLE_PROJECT_ID}

          gcloud info

      - name: Run Instrumentation Tests in Firebase Test Lab

        run: >

          gcloud firebase test android run 

          --type instrumentation 

          --app {パス}/app-debug.apk

          --test  {パス}/app-debug-androidTest.apk

          --device {デバイス指定}

          --results-bucket ${RESULT_BUCKET}

          --timeout 45m

      - name: Install gsutil dependency and copy test results data

        run: |

          mkdir -p ~/firebase_test_results

          sudo pip install -U crcmod

          sudo gsutil -m cp -r -U `sudo gsutil ls gs://${RESULT_BUCKET} ~/firebase_test_results

何が問題なのか

上記の基本的な書き方で問題はないといえばないです

ですが、テストケースが増えてくると実行時間が多くかかってしまいます

プロダクトの開発が進むにつれてテストケースも増加するはずです

そうなると待ち時間も増えますし、TestLabやCIの制限時間の影響を受け最後まで実行されない懸念が生まれます

記事の続きは下のリンクをクリック!

https://rightcode.co.jp/blogs/46034


エンジニア積極採用中です!

現在、WEBエンジニア、モバイルエンジニア、デザイナー、営業などを積極採用中です!

採用ページはこちら:https://rightcode.co.jp/recruit

社員の声や社風などを知りたい方はこちら:https://rightcode.co.jp/blogs?category=life

社長と一杯飲みながらお話しませんか?(転職者向け)

特設ページはこちら: https://rightcode.co.jp/gohan-sake-president-talk

もっとワクワクしたいあなたへ

現在、ライトコードでは「WEBエンジニア」「モバイルエンジニア」「ゲームエンジニア」、「デザイナー」「WEBディレクター」「営業」などを積極採用中です!

ライトコードは技術力に定評のある受託開発をメインにしているIT企業です。

有名WEBサービスやアプリの受託開発などの企画、開発案件が目白押しの状況です。

  • もっと大きなことに挑戦したい!
  • エンジニアとしてもっと成長したい!
  • モダンな技術に触れたい!

現状に満足していない方は、まずは、エンジニアとしても第一線を走り続ける弊社代表と気軽にお話してみませんか?

ネット上では、ちょっとユルそうな会社に感じると思いますが(笑)、
実は技術力に定評があり、沢山の実績を残している会社ということをお伝えしたいと思っております。

  • ライトコードの魅力を知っていただきたい!
  • 社風や文化なども知っていただきたい!
  • 技術に対して熱意のある方に入社していただきたい!

一度、【Wantedly内の弊社ページ】や【コーポレートサイト】をのぞいてみてください。

【コーポレートサイト】https://rightcode.co.jp/

【採用募集】https://rightcode.co.jp/recruit(こちらからの応募がスムーズ)

【wantedlyぺージ】https://www.wantedly.com/companies/rightcode

Invitation from 株式会社ライトコード
If this story triggered your interest, have a chat with the team?
株式会社ライトコード's job postings

Weekly ranking

Show other rankings
Like Hiroyuki Choshi's Story
Let Hiroyuki Choshi's company know you're interested in their content