131-java-testing-unit-testing について
JUnit 5、AssertJ、Mockito を使った Java の単体テストをレビューし、改善するスキルです。テスト品質の指針とコード例に加え、変更前のコンパイルと変更後の検証を求めます。
主な機能
- 01JUnit 5 の構成とパラメーター化テスト
- 02AssertJ の流れるようなアサーション
- 03Mockito による依存関係のモック
- 04カバレッジと境界値テストの指針
- 05事前コンパイルと変更後の検証
活用シーン
- 01Java 単体テストのレビューと現代化
- 02高速な JUnit 単体テストの作成
- 03Mockito テストでの協力要素の分離
インストール
コマンドをコピーしてターミナルで実行します。
npx skills add https:/ / github.com/ jabrena/ plinth --skill 131-java-testing-unit-testingインストール後、Claude Code で/131-java-testing-unit-testingを入力して読み込まれたか確認します。
同梱ファイルreferences/131-java-testing-unit-testing.md
詳細
Java ユニットテストのガイドライン
最新の JUnit 5、AssertJ、Mockito のベストプラクティスを使用して、Java のユニットテストをレビューし、改善します。
このスキルでは何を扱いますか?
- JUnit 5 のアノテーション:
@Test、@BeforeEach、@AfterEach、@DisplayName、@Nested、@ParameterizedTest - AssertJ の流れるようなアサーション:
assertThat、assertThatThrownBy - Given-When-Then のテスト構成、説明的なテスト名、単一責任のテスト
- テストの独立性と状態の分離
- パラメーター化テスト:
@ValueSource/@CsvSource/@MethodSource - Mockito による依存関係のモック:
@Mock、@InjectMocks、MockitoExtension - コードカバレッジのガイダンス(JaCoCo)、パッケージプライベートなテストの可視性
- テストのアンチパターン:リフレクション、共有状態、ハードコードされた値、実装の詳細のテスト
- エラー処理:
assertThatThrownBy、例外メッセージ - JSpecify による null 安全性:
@NullMarked、@Nullable - RIGHT-BICEP によるカバレッジの原則、A-TRIP によるテスト品質、CORRECT による境界条件の検証
対象範囲: このリファレンスは、主要な領域ごとに例(良いコードパターン/悪いコードパターン)をまとめています。該当する例に基づいて推奨事項を適用してください。
制約
ユニットテストを変更する前に、プロジェクトがコンパイルできることを確認してください。コンパイルに失敗した場合は、直ちに中止し、問題が解決するまで作業を進めないでください。改善を適用した後は、完全な検証を実行してください。
- 必須:変更を適用する前に、
./mvnw compileまたはmvn compileを実行してください - 安全性:コンパイルに失敗した場合は、直ちに中止し、作業を進めないでください。コンパイル失敗は、作業を妨げる条件です
- 検証:改善を適用した後に、
./mvnw clean verifyまたはmvn clean verifyを実行してください - 適用前:詳細な例、良い/悪いパターン、制約について、リファレンスを読んでください
このスキルを使用する場面
- Java コードのユニットテストをレビューする
- Java コードのユニットテストにベストプラクティスを適用する
- Java コード向けの高速な JUnit ユニットテストを作成する
- Mockito ベースの Java ユニットテストを改善する
- 依存するコンポーネントを分離するために Java のテストをリファクタリングする
ワークフロー
- ユニットテストを変更する前にプロジェクトをコンパイルする
./mvnw compile または mvn compile を実行し、コンパイルに失敗した場合は直ちに中止してください。
- ユニットテストのリファレンスを読み、カバレッジを評価する
references/131-java-testing-unit-testing.md を読み、現在のテストにおけるモダナイゼーションと品質の不足点を特定してください。
- ユニットテストのベストプラクティスを適用する
JUnit 5、AssertJ、Mockito、パラメーター化、より厳密な境界チェックを使用して、テストを実装またはリファクタリングしてください。
- 完全なビルドで検証する
改善を適用した後に、./mvnw clean verify または mvn clean verify を実行してください。
リファレンス
詳細なガイダンス、例、制約については、references/131-java-testing-unit-testing.md を参照してください。