私の質問は:
JUnitで、ファイルシステムに物理的に保存されているXMLファイルからSUTを読み取らせずに、テスト対象システム(SUT)のxmlデータを設定するにはどうすればよいですか?
背景:
請求書の作成規則を含むXMLファイルが提供されます。私の仕事は、これらのルールをXMLからJavaオブジェクトに変換することです。たとえば、XMLファイルに以下のようなタグがあり、30日が経過すると、トランザクションに請求できないことを示します。
<ExpirationDay>30</ExpirationDay>
これはJavaクラスに変換されます。たとえばExpirationDateInvoicingRule
XMLファイルを取得して*InvoicingRuleオブジェクトを作成するクラスInvoiceConfigurationがあります。StAXを使用してInvoiceConfiguration内のXMLドキュメントを解析することを考えています
問題:
InvoiceConfigurationの単体テストをしたい。しかし、InvoiceConfigurationがファイルシステム上のxmlファイルから物理的に読み取ることは望ましくありません。単体テストを、物理的に保存されているxmlファイルから独立させたい。メモリ内にxml表現を作成したいと思います。ただし、StAXパーサーはFileReaderのみを使用します(またはファイルオブジェクトで遊ぶことができます)