mirror of
https://github.com/affaan-m/everything-claude-code.git
synced 2026-05-19 07:13:07 +08:00
Translate everything-claude-code repository to Japanese including: - 17 root documentation files - 60 agent documentation files - 80 command documentation files - 99 rule files across 18 language directories (common, angular, arkts, cpp, csharp, dart, fsharp, golang, java, kotlin, perl, php, python, ruby, rust, swift, typescript, web) - 199 skill documentation files Total: 455 files translated to Japanese with: - Consistent terminology glossary applied throughout - YAML field names preserved in English (name, description, etc.) - Code blocks and examples untouched (comments translated) - Markdown structure and relative links preserved - Professional translation maintaining technical accuracy This translation expands ECC accessibility to Japanese-speaking developers and teams. Co-Authored-By: Claude Haiku 4.5 <noreply@anthropic.com>
4.7 KiB
4.7 KiB
description
| description |
|---|
| Flutter/Dartテストを実行し、失敗を報告し、テスト問題をインクリメンタルに修正します。ユニット、ウィジェット、ゴールデン、統合テストをカバーします。 |
Flutterテスト
このコマンドはFlutterテストスイートを実行し、結果を報告します。失敗が発生した場合、問題を診断しインクリメンタルに修正します。
このコマンドの動作
- テスト実行:
flutter testを実行(または変更されたファイルにスコープを限定) - 失敗を解析: タイプと原因別に失敗するテストを特定
- インクリメンタルに修正: 可能な場合は一度に1つの失敗
- 検証: 各修正後に再実行
- 報告: カバレッジサマリーと残りの失敗を表示
使用するタイミング
/flutter-testを使用するのは:
- 機能を実装した後に何も壊れていないことを確認するため
/flutter-build実行後にテストが通ることを確認するため- 新しいコードのテストカバレッジを確認するため
- 特定のテストファイルが失敗している時
- PRを提出する前
実行されるコマンド
# すべてのテストを実行
flutter test 2>&1
# カバレッジ付きで実行
flutter test --coverage 2>&1
# 特定のテストファイルを実行
flutter test test/unit/domain/usecases/get_user_test.dart 2>&1
# 名前パターンに一致するテストを実行
flutter test --name "CartBloc" 2>&1
# 統合テストを実行(デバイス/エミュレーターが必要)
flutter test integration_test/ 2>&1
# 意図的なビジュアル変更時にゴールデンファイルを更新
flutter test --update-goldens 2>&1
セッション例
User: /flutter-test
Agent:
# Flutterテスト実行
## テスト実行
```
$ flutter test
00:05 +42 -2: Some tests failed.
FAILED: test/unit/data/user_repository_test.dart
UserRepository getById
returns null when user not found
Expected: null
Actual: User(id: 'test-id', name: 'Test User')
FAILED: test/widget/cart_page_test.dart
CartPage
shows empty state when cart is empty
Expected: exactly one widget with text 'Your cart is empty'
Found: no widget with text 'Your cart is empty'
```
## 修正 1: リポジトリテスト
File: test/unit/data/user_repository_test.dart
失敗: `getById`が欠落IDに対してnullを返すべきところでユーザーを返す
根本原因: テストセットアップがID 'test-id' のユーザーを追加するが、'missing-id' でクエリしている。
修正: 'missing-id' でクエリするようテストを更新 — セットアップは正しく、クエリが間違っていた。
```
$ flutter test test/unit/data/user_repository_test.dart
1 test passed.
```
## 修正 2: ウィジェットテスト
File: test/widget/cart_page_test.dart
失敗: 空状態のテキストウィジェットが見つからない
根本原因: 空状態メッセージがウィジェット内で 'Your cart is empty' から 'Cart is empty' に変更されていた。
修正: 現在のウィジェットのコピーに合わせてテスト文字列を更新。
```
$ flutter test test/widget/cart_page_test.dart
1 test passed.
```
## 最終実行
```
$ flutter test --coverage
All 44 tests passed.
Coverage: 84.2% (target: 80%)
```
## サマリー
| メトリクス | 値 |
|-----------|-----|
| 総テスト数 | 44 |
| 成功 | 44 |
| 失敗 | 0 |
| カバレッジ | 84.2% |
テストステータス: PASS ✓
一般的なテスト失敗
| 失敗 | 典型的な修正 |
|---|---|
Expected: <X> Actual: <Y> |
アサーションを更新するか実装を修正 |
Widget not found |
ファインダーセレクタを修正するかウィジェット名変更後にテストを更新 |
Golden file not found |
flutter test --update-goldensを実行して生成 |
Golden mismatch |
差分を検査し、変更が意図的なら--update-goldensを実行 |
MissingPluginException |
テストセットアップでプラットフォームチャネルをモック |
LateInitializationError |
setUp()でlateフィールドを初期化 |
pumpAndSettle timed out |
明示的なpump(Duration)コールに置き換え |
関連コマンド
/flutter-build— テスト実行前にビルドエラーを修正/flutter-review— テスト通過後にコードをレビューtdd-workflowスキル — テスト駆動開発ワークフロー
関連
- エージェント:
agents/flutter-reviewer.md - エージェント:
agents/dart-build-resolver.md - スキル:
skills/flutter-dart-code-review/ - ルール:
rules/dart/testing.md