::class.fixture() pattern — Kotlin 拡張関数を生かした、Test Fixture 管理の紹介 by 松田一樹

Kotlin Fest 2022
採択
2022/12/10 14:05〜
トラックA
どちらでも

::class.fixture() pattern — Kotlin 拡張関数を生かした、Test Fixture 管理の紹介

kazuki_matsuda 松田一樹 kazuki_matsuda
6

Test Fixture と呼ばれる形で、テストで多用される前提条件やインスタンスの集合体を適切に管理していくと、ユニットテストが非常に書きやすくなります。

従来 Fixture を CAPITAL_CASE で定義して使い回していましたが、IDE による補完が効きにくいため再利用がしにくいという問題がありました。
そこで、クラスに対する拡張関数として Fixture を定義する事で、Production コードを汚染せずに、IDE による補完の恩恵を受けられる管理ができるようになりました。

セッションでは、具体的な記述方法や、IDE で補完される場合の体験を、デモを交えながら紹介させて頂こうと思っています。

(45分枠であれば、Gradle の TestFixturePlugin ついても、組み合わせた事例も交えつつご紹介します)