2012-03-06 4 views
4

手作りのJAXB注釈付きファイルと手作りのxsdファイルのより大きな束が得られました。また、ほとんどのJAXB beanを作成し、ほとんどのフィールドを設定する必要があるxmlファイルのサンプルがいくつかあります。JAXBテスト手作り豆

すべての重要な(95%)属性が設定されているかどうかをテストするにはどうすればよいですか?私はすべてのbeanのすべての属性をテストする必要はありません。

手作りの豆がxsdファイルと一致するかどうか、または代替テストとしておそらくありますか?

答えて

2

これを処理するにはいくつかの方法がありますが、最後に何らかの自動化が必要です。クラスとXSDの複雑さによって異なります。

JAXBのschemagenを既に使用しているクラスのセットに対して使用することから始めます。現在のコードベースに追加する必要がある追加の注釈が必要な場合があります。そのXSDを手にすれば、ほとんどの場合、手動で2つのXSDを比較して、それらが似ているかどうかを確認できます。モデルXSDで選択肢、すべて、抽象、グループなどを使用すると、操作が面倒になることがあります。

私は、XSDのツールを使用します。

  • は、あなたが同じカバレッジを持っていることを保証するために、与えられたルート要素のためにこれらの2セットからのすべての可能なXPathを生成します。
  • あなたのゴールドコピーに応じて、XSDの1つを使用してXMLサンプルを自動的に生成し、他のXSDを使用して検証する - 不整合を発見し、既存のコードを使用してXMLをアンマーシャルする。

Blaiseが説明したように、marshallとcompare(理想的にはスキーマ対応のXML比較を使用すると、XML対応のテキスト比較はほとんど役に立たない)。

1

コントロールXML文書を非整列化し、XMLにマーシャリングすることができます。次に、2つのXML文書を比較して、同じ内容が含まれていることを確認します。これにより、往復の場合が検証されます。

関連する問題