Communityコーディング&開発github.com

dart-lang/dart-generate-test-mocks

`package:mockito` と `build_runner` を使って外部依存関係のモックオブジェクトを定義・生成します。APIやデータベースなどの複雑な外部サービスに依存するクラスの単体テストで使用します。

dart-generate-test-mocks とは?

このスキルは、Dart プロジェクトにおいて `package:mockito` と `build_runner` を活用して、外部依存関係(API、データベースなど)のモックオブジェクトを自動生成する方法を提供します。開発者は `@GenerateNiceMocks` アノテーションを使ってモックを定義し、`dart run build_runner build` を実行するだけで、実際のサービスに依存せずにテスト可能なモッククラスが生成されます。これにより、複雑な依存関係を持つクラスの単体テストが容易になり、テストの保守性と信頼性が向上します。主に Dart および Flutter プロジェクトで利用でき、モックの手動実装の手間を省き、テストコードの記述を効率化します。

対応~Claude Code~Codex CLI~Cursor
npx skills add https://github.com/dart-lang/skills/tree/main/skills/dart-generate-test-mocks

Installed? Explore more コーディング&開発 skills: steipete/bluebubbles, steipete/eightctl, steipete/blucli · View all 6 →

お気に入りのAIに質問する

このエージェントスキルを事前に読み込んだ状態で新しいチャットを開きます。

ドキュメント

dart-generate-test-mocks は何をしますか?

package:mockito と build_runner を使って外部依存関係のモックオブジェクトを定義・生成します。APIやデータベースなどの複雑な外部サービスに依存するクラスの単体テストで使用します。

使用方法

  1. プロジェクトに依存関係を追加します:
dev_dependencies:
  build_runner: ^2.0.0
  mockito: ^5.0.0
  1. テストファイルでモックを定義します:
import 'package:mockito/annotations.dart';
import 'package:my_app/services/api_service.dart';

@GenerateNiceMocks([MockSpec<ApiService>()])
void main() {}
  1. モックを生成します:
dart run build_runner build
  1. 生成されたモックをテストで使用します:
import 'package:flutter_test/flutter_test.dart';
import 'package:mockito/mockito.dart';
import 'mocks.dart';

void main() {
  late MockApiService mockApiService;

  setUp(() {
    mockApiService = MockApiService();
  });

  test('データを正常に取得できる', () async {
    when(mockApiService.fetchData()).thenAnswer((_) async => 'テストデータ');
    expect(await mockApiService.fetchData(), 'テストデータ');
  });
}

Individual skills in this repo

This repo contains 8 individual skills — each has its own dedicated page.

関連スキル