KotlinのCI自動テスト入門!GitHub Actionsでテストを自動化しよう
生徒
「Kotlinのプログラムを自動でテストする方法ってありますか?」
先生
「はい、GitHub ActionsというCIツールを使えば、Kotlinのテストを自動で実行できますよ。」
生徒
「CIツールって何ですか?それって難しいんですか?」
先生
「安心してください。CIは“自動でチェックするお手伝いさん”みたいな存在です。今回はKotlinのテストをGitHub Actionsで自動化する方法を、やさしく解説していきますね!」
1. CIとは?初心者向けにやさしく説明
CIとは「Continuous Integration(継続的インテグレーション)」の略で、プログラムに変更を加えたときに、自動でテストやビルド(実行可能にする作業)をしてくれる仕組みです。
たとえば、Kotlinで書いたプログラムをGitHubにアップロード(プッシュ)したタイミングで、自動的にテストが実行されて「OKかどうか」をチェックしてくれるんです。
CIツールを使うことで、人の手を使わずにテストが毎回実行されるので、うっかりミスやバグを見逃す心配が減ります。
2. GitHub Actionsとは?
GitHub Actions(ギットハブ アクションズ)は、GitHubに標準で備わっている無料で使えるCIツールです。
設定ファイルを1つ用意するだけで、Kotlinのテストやビルドが自動で行われるようになります。
たとえば「ファイルをアップしたらテストを実行する」といった動作を、コードで事前に決めておくことができます。
3. KotlinプロジェクトをGitHubにアップロードする
まずは、KotlinのプロジェクトをGitHubにアップロードしましょう。これは、無料で使えるオンライン上の保存場所のようなものです。
以下の手順で行います:
- GitHubで新しいリポジトリを作成
- 自分のパソコンからプロジェクトをアップロード(Git push)
このとき、build.gradle.ktsなどGradleのファイルがあることを確認してください。KotlinのプロジェクトはGradleと一緒に使われることが多いです。
4. GitHub Actionsの設定ファイルを作成する
CIの仕組みを動かすためには、GitHubの中に専用の設定ファイルを用意します。
プロジェクトの中に以下のようなフォルダとファイルを作りましょう:
.github/workflows/kotlin-test.yml
そして、以下の内容を書き込みます:
name: Kotlin CI
on:
push:
branches: [ "main" ]
pull_request:
branches: [ "main" ]
jobs:
build:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- name: Set up JDK 17
uses: actions/setup-java@v3
with:
java-version: '17'
distribution: 'temurin'
- name: Build with Gradle
run: ./gradlew build
これで、「mainブランチにコードをアップしたときにGradleでビルドとテストを実行する」という設定になります。
5. Kotlinのテストコードが自動で動く仕組み
上記の設定では、./gradlew buildというコマンドで、Kotlinのコードをビルド&テストしています。
これは、Kotlinのテストが含まれているGradleプロジェクトであれば、すでに作ってあるtestというフォルダの中のコードを自動で実行してくれるんです。
たとえばこんなテストコードがあるとします:
import org.junit.jupiter.api.Test
import kotlin.test.assertEquals
class HelloTest {
@Test
fun testHello() {
val result = "Hello, Kotlin!"
assertEquals("Hello, Kotlin!", result)
}
}
このようなコードがあると、自動的に実行されて、テストが成功すれば「OK」、失敗すれば「エラー」と表示されます。
6. 実行結果はどこで確認する?
テストが成功したかどうかは、GitHubの画面上で確認できます。
リポジトリの上部にある「Actions」タブをクリックすると、実行履歴が一覧で表示されます。
各テストのステップも細かく見られるので、どこで失敗したのかを確認するのも簡単です。
✔ Build with Gradle - success
✔ Test Kotlin code - success
7. KotlinのCIでよくあるエラーと対策
自動テストがうまく動かないとき、以下のようなエラーがよくあります:
- JDKのバージョンが合っていない: Kotlinで使っているJavaのバージョンと、GitHub Actionsの設定が合っていないことがあります。
- Gradle Wrapperが無い:
./gradlewが無いとエラーになります。必ず含めましょう。 - ファイル名のスペルミス:
.ymlの拡張子やファイルパスが正しくないと、GitHub Actionsが反応しません。
Kotlinを基礎からしっかり学びたい人や、 Java経験を活かしてモダンな言語にステップアップしたい人には、 定番の入門書がこちらです。
基礎からわかるKotlinをAmazonで見る※ Amazon広告リンク
8. Kotlin初心者でもCIを活用しよう
GitHub Actionsを使えば、Kotlinのテストを毎回自動で確認できます。これにより、コードのミスやバグを早く見つけられて、安心して開発を進められます。
一度設定すれば、あとは自動で動くので、「初心者こそCIを使ったほうが安全」と言えます。
最初は難しく感じるかもしれませんが、設定ファイルをコピーして使うだけでも十分に効果があります。Kotlinの学習と一緒に、CIの自動化にもぜひチャレンジしてみてください!