実現したいこと
テスト対象クラス内から他クラスのメソッドを呼び出し、それにモックをかけたい
制約事項
DB接続処理があるが接続できない
▼テスト対象クラス
java
1public class Saitama { 2 3 public void Urawa() { 4 5 Tokyo tky = new Tokyo(); 6 7 String city = tky.sightseeing(); 8 9 if(!tky.equals("")) { 10 System.out.println("tkyの値が返却されました"); 11 } 12 } 13}
▼テスト対象クラスから呼ばれるクラス
java
1public class Tokyo { 2 3 public String sightseeing() { 4 5 String spot = null; 6 7 // DBから観光スポットを取得する処理 8 // しかし、環境の都合上DB接続できない 9 10 String spot = 【DBから取得した値を格納】 11 12 return spot; 13 } 14}
▼Junit
java
1public class SaitamaTest { 2 3 @Test 4 public void UrawaTest() { 5 6 Saitama stm = new Saitama(); 7 8 stm.Urawa(); // DBの接続ができない為値を取得できない。 9 // 「tky.sightseeing();」だけモックで何とかしたい 10 } 11}
情報不足がありましたら対応させていただきます。
追記
考え方を変えて、
Junitの方でDBから値を取得した体でテストコードの方に渡すやり方にしようと思います。
その方法ができましたら再度ここに記載させていただきます。