UnitTest

liveData{} の UnitTest を書いてみた

coroutines 対応の liveData{} で UnitTest を書いたので、その実装とハマった箇所でも残しておきます。

テストの実装については Google I/O 2019 のセッション動画で紹介されています。

今回は以下のような liveData{} のテストを書いていきます。

fun exampleLiveData(): LiveData<Int> = liveData {

もっとみる

【SpringBoot 1.5.x】@TestPropertySource でYAMLファイルが読めなくてハマった話

どうやらパターンがあったので、備忘録としてまとめを。
たぶん、2系にあげるときに、ここ対応したこと忘れそうなので。。

①テストでDBは使ってないんだけど、起動時に読み込んじゃうので黙殺したいケース

特に変わったConfigとか使わないからmainと同じConfigで良いけど、DBは使わないケースなんかが当てはまるかと。
やることは2つ

1-1. テストケースに @ActiveProfile(

もっとみる

DI利用時のUnitTestの課題を解消する:Mock Injection Factoryパターン

Dependency Injectionパターンを用いたクラスのテストコードを記述しているとき、Injectionする対象が増えた際、修正が広範に及んでしまう事があります。

このとき、依存オブジェクトを注入して生成するFactoryクラスを利用してテスト対象のクラスを生成することで解決ができます。

背景

次のClientのようなテスト対象のクラスが存在したとします。

public clas

もっとみる