ページ内ナビ
概要
RobolectricはAndroid向けのユニットテストフレームワークです。Android環境をJVM上でシミュレーションし、ActivityやAndroid APIを使うコードを実機・エミュレーターなしでテストできます。
特徴と向いている用途
公式資料に基づく紹介・実機未検証 · 内容確認日:
主な特徴
向いている用途
Androidロジックの短いフィードバックループを作りたい場合に向く
ViewModel周辺だけでなくActivityやAndroid APIへ触れる処理もローカルJVMで確認したいチームに適します。CIでエミュレーターを常時起動するコストを抑えながらユニットテストを増やせます。
出典:[2]
導入前の確認
4.17のSDK対応とJDK設定、実端末との差を確認する
Robolectric 4.17はSDK 37対応を追加しています。リリースノートではJDK 17以上でjvmFlags設定が必要になる場合があると案内されています。シミュレーション環境なので、端末固有の描画・ハードウェア・OEM差分はinstrumented testでも確認してください。
出典:[3]
参考にした公式資料
- [1]robolectric/robolectric — GitHub repository(2026-10-06)
- [2]Robolectric 4.17 — README(2026-10-06)
- [3]Robolectric 4.17 release(2026-10-06)
- [4]Robolectric 4.17 — LICENSE(2026-10-06)
編集部からの補足
実機やエミュレーターを起動せず、Android APIを使うロジックへ高速にフィードバックを得たい場合に有効です。最終的な端末依存挙動はinstrumented testでも確認し、Robolectricだけで全互換性を保証しない運用が適します。
3ステップで試す
- 1
Robolectric 4.17とテスト依存関係を追加する
AndroidモジュールのGradle設定へRobolectric 4.17、JUnit 4、AndroidX TestのJUnit拡張を追加します。
testImplementation("junit:junit:4.13.2") testImplementation("org.robolectric:robolectric:4.17") testImplementation("androidx.test.ext:junit:1.3.0") - 2
Activityのローカルテストを書く
READMEのActivityController例に沿ってActivityをRESUMED状態まで進め、JVM上でAndroid依存コードを確認します。
@RunWith(AndroidJUnit4::class) class MyActivityTest { @Test fun launch() { Robolectric.buildActivity(MyActivity::class.java).use { controller -> val activity = controller.setup().get() check(activity != null) } } } - 3
Debugのユニットテストを実行する
Android Gradle PluginのDebug向けローカルユニットテストを実行し、Robolectricテストがエミュレーターなしで通ることを確認します。
./gradlew testDebugUnitTest
成長
成長の推移 · 直近30日
6,061 Stars
推移データを蓄積中です。
開発アクティビティ
直近90日・週次
- Commit(直近30日)
- 43
- Open PR
- 100
開発アクティビティを蓄積中です。
Built with
カテゴリとタグ
GitHubデータ
関連情報
関連記事を投稿するこのOSSの使い方や活用事例をMarkdownで投稿できます。管理者が承認した後に公開されます。
あわせて探訪
- Mockito15,454 Stars
共通タグ 3件 · 共通カテゴリ 2件 · 同じ言語
Javaの依存先を模擬し、単体テストを小さく保つ
Java - JUnit7,057 Stars
共通タグ 3件 · 共通カテゴリ 2件 · 同じ言語
PlatformとJupiterでJava/JVMテストを実行する標準的なテスト基盤
Java - AndroidX Test1,226 Stars
共通タグ 3件 · 共通カテゴリ 2件 · 同じ言語
AndroidJUnitRunner・Espresso・Test Coreを組み合わせ、device上のinstrumented testとUI testを構築する
Java - MockK5,762 Stars
共通タグ 3件 · 共通カテゴリ 2件
mock・stub・verifyをKotlin DSLで記述し、coroutineやAndroid testへ広げる
Kotlin - Apache JMeter9,552 Stars
共通タグ 2件 · 共通カテゴリ 2件 · 同じ言語
HTTP・JDBC・JMSなどへ負荷をかけ、response timeとthroughputを計測する
Java - Jest45,500 Stars
共通タグ 2件 · 共通カテゴリ 2件
assertion・mock・watch・snapshot・worker isolationを一つのCLIへまとめるJavaScript testing framework
TypeScript
情報の誤りを報告
掲載内容に誤りや古い情報があればお知らせください。