Я звоню с моей конечной точки отдыха на внешний API. Примерно так:
private byte[] retrieveImageFromExernalAPI() {
byte[] imageBytes = null;
URL url = new URL("https://cdau:6443/rest/services/targetEndpoint");
BufferedImage bufferedImage = ImageIO.read(url);
imageBytes = convertBufferedImageToByte(bufferedImage, "png");
} catch (IOException e) {
//logger.error(e);
throw new RuntimeException(e);
}
return imageBytes;
}
Как видно из приведенного выше кода, я вызываю внешний API и в качестве ответа получаю объект BufferedImage
в Java. Затем я вызываю метод convertBufferedImageToByte(bufferedImage, "png");
, который преобразует ответ BufferedImage
в изображение (byte[]
). Примерно так:
private byte[] convertBufferedImageToByte(BufferedImage image, String type) throws IOException {
ByteArrayOutputStream baos = new ByteArrayOutputStream();
ImageIO.write(image, type, baos);
byte[] bytes = baos.toByteArray();
return bytes;
}
Дело в том, что я действительно не знаю, как это проверить. Должен ли я использовать mockito для насмешки внешнего API или просто JUnit? Я слышал о журчалке, но все еще пытался понять, как она вписывается в эту ситуацию.
Любая помощь будет высоко ценится!