私は、画像をバイト配列として受け取り、それをjava.awt.image.BufferedImage
インスタンスに読み込んで、処理のためにサードパーティのライブラリに渡すJavaアプリケーションの一部に取り組んでいます。
単体テストでは、(ディスク上のファイルから)画像を取得し、コードによって処理されたのと同じ画像と等しいことを表明します。
- 私の期待
BufferedImage
は、を使用してディスク上のPNGファイルから読み取られますImageIO.read(URL)
。 - 私のテストコードは同じファイルをに読み込み、
BufferedImage
それをPNGとしてバイト配列に書き込んで、テスト対象のシステムに提供します。
テスト対象のシステムがバイト配列を新しいものに書き込むときBufferedImage
、2つのイメージが意味のある方法で等しいことを主張したいと思います。equals()
(から継承された)の使用は(Object
もちろん)機能しません。出力文字列にはオブジェクト参照情報が含まれているため、値の比較BufferedImage.toString()
も機能しません。
誰かがショートカットを知っていますか?大規模なアプリケーションのごく一部での単一ユニットテスト用にサードパーティのライブラリを持ち込むことは避けたいと思います。