Maven webappプロジェクトで、
「servlet.http.Partとinputされたファイルの拡張子(String)を引数に取り、画像データのBase64をStringで返すロジック」の、単体テストをしたいのですが、
どのような方法がありますか。
大元は、jspのから受け取った画像ファイルの取得をするプログラムです。

  1. Mockを使用
  2. SpringのMockHttpServletRequestを使う
  3. src/test/resourcesにテストファイルを作って読み込んだ情報をPartとして使う(?)

などを思いついたのですが、
1.=> NullPointerExceptionになる(MockなのでNullになるのはわかっている)
2.=> NoClassDefFoundErrorになる
3.=> Partとして使う方法がわからないので試していない

で行き詰まっています。
Springは全く詳しくないのですが、このような状況下で部分的に使用するには、
別途設定クラスなどが必要でしょうか?

上記中で、そもそも間違っている点、考えられる方法のヒントがあれば
ご教示いただけると幸いです。
よろしくお願いします。

Logic

    public String execute64(Part part,String suffix) throws IOException {

        try(BufferedInputStream   br=new BufferedInputStream(part.getInputStream(),(int)part.getSize());
            ByteArrayOutputStream bo=new ByteArrayOutputStream()){

            int count=0;
            byte[] buf=new byte[(int)part.getSize()];

            while((count=br.read(buf)) != -1) {
                bo.write(buf,0,count);
            }

            String base64=new String(Base64.encodeBase64(bo.toByteArray()),"ASCII");
            StringBuffer sb=new StringBuffer();
            sb.append("data:image/").append(suffix).append(";base64,").append(base64);

            return sb.toString();
        }
    }