最新記事一覧
ライブラリ解説Java軽量ロガーMinLogの使い方と導入方法
Javaでログ出力を行う際、多くの現場ではLog4jやSLF4Jといった高機能なロギングフレームワークが使われています。しかし、小規模なツールやユーティリティ、ライブラリ開発では、「そこまでの機能は要らない」「もっと軽くて依存のないものが欲しい」と感... ライブラリ解説EqualsVerifierでequalsとhashCodeの検証を自動化
Javaにおけるequals()メソッドとhashCode()メソッドの正しい実装は、SetやMapなどのコレクション操作やオブジェクトの同一性判定において不可欠な要素です。 しかし、これらのメソッドが満たすべき「対称性」「推移性」「一貫性」といった厳密な契約条件を... ライブラリ解説JUnit Pioneer徹底解説:JUnit5拡張の使い方集
JUnit 5(JUnit Jupiter)は、モダンで柔軟なテスト記述を可能にする強力なテストフレームワークです。しかし、実際の開発現場では「テスト中だけ環境変数を一時的に変更したい」「標準出力やエラー出力をキャプチャして検証したい」といった、より現実的... ライブラリ解説JUnit Platform Test Kit の使い方徹底解説
JUnit 5では、従来よりも柔軟かつ拡張性の高いテスト環境が提供されています。その中でも、テストフレームワーク自体や拡張機能の動作をプログラムから検証できる「JUnit Platform Test Kit」は、ライブラリ開発者や高度なテスト設計を行うエンジニアにと... ライブラリ解説【Mockito】AdditionalMatchersの使い方徹底解説
Mockitoでモックを使ったテストを書いていると、「引数が10より大きい場合だけ動作させたい」「ある条件を除外したい」といった柔軟な条件指定をしたくなる場面がよくあります。しかし、Mockitoが標準で提供する ArgumentMatchers では、こうした複雑な条... ライブラリ解説【Mockito】AdditionalAnswers徹底解説と活用術
単体テストを書いていて、「引数に応じた戻り値を返したい」「一部だけ実際のオブジェクトに処理を任せたい」「遅延をシミュレートしたい」といった場面に遭遇したことはありませんか? こうした柔軟なモックの振る舞いを簡潔に実現できるのが、Mockitoの... ライブラリ解説【SpotBugs】アノテーションの使い方と注意点
Javaの静的解析ツールとして定番のSpotBugsは、コードに潜む潜在的なバグを自動で検出してくれる心強いツールです。しかし、その真価を発揮するには、開発者が設計意図を明示することが重要になります。 そこで役立つのが、SpotBugsが提供するアノテーショ... ライブラリ解説Objenesisでコンストラクタを呼ばずにインスタンス生成
Javaでは通常、オブジェクトを生成するときに必ずコンストラクタが呼び出されます。これは言語仕様として自然な挙動ですが、実は一部のユースケースでは「コンストラクタを呼ばずにインスタンスを生成したい」というニーズが存在します。たとえば以下のよ... ライブラリ解説【JUnit】@AutoCloseでリソースの後始末を自動化
ユニットテストでは、ファイル、ソケット、データベース接続などのAutoCloseableを実装したリソースを扱うことがよくあります。こうしたリソースは、テスト終了後に確実にclose()を呼んでリソースリークを防ぐ必要があります。 これまでは、@AfterEachで明... ライブラリ解説【Java】@APIアノテーション徹底解説
Javaのライブラリやフレームワークを使っていると、クラスやメソッドに@API(status = Status.STABLE) のようなアノテーションを見かけたことはありませんか? これは API Guardian プロジェクトが提供する @API アノテーションで、そのAPIがどれだけ安定し...