2016-04-06 17 views
1

私はximpleware(VTD-XML)を解析するXML持っている - このような何か:XMLユニットテスト - オープンXMLは - それが有効だかどうかを確認 - 彼らはXMLに存在する場合、いくつかのタグをご確認

 <?xml version="1.0"?> 
     <S2SCTScf:SCTScfBlkCredTrf xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:S2SCTScf="urn:S2SCTScf:xsd:$SCTScfBlkCredTrf" xsi:schemaLocation="urn:S2SCTScf:xsd:$SCTScfBlkCredTrf file:///T:/CommonData%201/CBS/CBS%20Payments%20Team/Testing/XSD/SCT/SCTScfBlkCredTrf.xsd"> 
    ................................   
       <CdtTrfTxInf> 
        <PmtId> 
         <EndToEndId>171766 12856615</EndToEndId> 
         <TxId>6022064LAS99</TxId> 
        </PmtId> 
        <PmtTpInf> 
         <SvcLvl> 
          <Cd>SSSS</Cd> 
         </SvcLvl> 
        </PmtTpInf> 
......................... 

を私はjunitや何かを書こうと思っています - 私はHamcrestや何かのためのMatchersを見つけましたが、XMLを開く方法がわからず、XmlMatchers.hasXPath("/CdtTrfTxInf/PmtId/EndToEndId"))などがあるかどうかを見てみましょう...

また、それが有効なXMLであるかどうかをテストしたいと思います。 誰でも私のXMLを開くためのコードを教えてもらえますか?それが有効かどうかテストし、私のjava解析コードに必要なタグがいくつかあるかどうかをテストできますか?

ありがとうございます!あなたは、タグの存在をチェック、あなたが行うことができVTD-XMLでファイルを開くには

+0

あなたがここにhttp://stackoverflow.com/questions/あなたの答えを見つけることができます51771/the-best-way-to-validate-xml-in-a-unit-test?rq = 1 – udaybhaskar

+0

"マイナス"ありがとうございましたが、私はそこにいました。私のXMLにタグがある場合、XMLやckeckへの方法。 – WDrgn

+1

http://www.mkyong.com/java/how-to-read-xml-file-in-java-dom-parser/これは間違いなくあなたのxmlファイルを読むのを助けるでしょう – udaybhaskar

答えて

1

import com.ximpleware.*; 
public class openAndTest{ 
    public static void main(String[] s) throws VTDException{ 
     // open the XML file 
     VTDGen vg = new VTDGen(); 
     if (!vg.parseFile("input.xml", false)) // namespace disabled here 
      return; 
     VTDNav vn = vg.getNav(); 
     AutoPilot ap = new AutoPilot(vn); //bind to vn object 
     ap.selectXPath("/CdtTrfTxInf/PmtId/EndToEndId"); // dont put xpath compilation in loop 
     System.out.println(" test result is "+ap.evalXPathToBoolean()); 
     ap.selectXPath("/CdtTrfTxInf/PmtId/EndToEndId"); // reuse AP, but you can instantiate a separate AutoPilot object. 
     System.out.println(" test result is "+ap.evalXPathToBoolean()); 

    } 
} 
関連する問題