サードパーティライブラリを使用して外部サービスからデータを取得するJavaクラスがあります。このサードパーティライブラリには、データを取得する静的メソッドがあります。 JunitまたはMakitoを使用して、このケースでどのように100%コードカバレッジを達成できますか?私は静的メソッドを模擬して、複数のパスに到達することができません。 クラスは、このようなものになります。サードパーティの静的メソッドのコードカバレッジ
import com.company.dataprovider;
Class DataAccess {
public String getData(String key) {
try {
DataObject data = dataprovider.getData(key);
return data.toString();
} catch (ThirdPartyDataException ex) {
log(ex);
throw new DataAccessException(ex);
}
}
あなたのコードはどのようにこのライブラリを使用していますか? DIを使ってライブラリをスタブしてコードをテストできますか?出版社がそれを世話しておく必要があるので、ライブラリ自体をテストする必要はありません。 – ssc327
合意して、パブリッシャーのコードをテストする必要はありません。 DataAccessクラスに何かを挿入すると、どうなるでしょうか? 静的メソッドであるため、dataproviderクラスを渡すことは静的メソッドを擬似することができないため役に立ちません。 – Thor
コードサンプルからは、サードパーティのライブラリを呼び出しますか? – ssc327