Каков наилучший способ проверки файла XML по сравнению с локальным файлом XML? - PullRequest
1 голос
/ 09 апреля 2020

Я разрабатываю некоторые тестовые рамки. Я предполагаю проверить чрезвычайно сложные ответы XML с локальными данными.

Я думал, что у меня есть локальные данные в формате CSV, и достиг некоторой проверки, но я обнаружил ограничение этой структуры, что я не могу проверить сложные данные, например

<?xml version='1.0' encoding='UTF-8'?>
 <!DOCTYPE ResourceObject PUBLIC "abc_corp.dtd" "abc_corp.dtd">
 <ResourceObject displayName="abcd" identity="pqr" objectType="account" uuid="123456">
   <Attributes>
     <Map>
       <entry key="memberOf"/>
       <entry key="objectClass">
         <value>
           <List>
             <String>top</String>
             <String>person</String>
             <String>organizationalPerson</String>
             <String>user</String>
           </List>
         </value>
       </entry>
       <entry key="objectSid" value="S-1-5"/>
       <entry key="objectType" value="user"/>
          <value>
           <List>
             <Permission rights="allow:elasticmapreduce:Describe*" target="*"/>
             <Permission rights="allow:elasticmapreduce:List*" target="*"/>
             <Permission rights="allow:elasticmapreduce:ViewEventsFromAllClustersInConsole" target="*"/>
             <Permission rights="allow:s3:GetObject" target="*"/>
             <Permission rights="allow:s3:ListAllMyBuckets" target="*"/>
             <Permission rights="allow:s3:ListBucket" target="*"/>
             <Permission rights="allow:sdb:Select" target="*"/>
             <Permission rights="allow:cloudwatch:GetMetricStatistics" target="*"/>
           </List>
         </value>
       </entry>
     </Map>
   </Attributes>
 </ResourceObject>

Из вышеперечисленных XML объект ниже entry трудно представить в формате CSV

       <entry key="objectType" value="user"/>
          <value>
           <List>
             <Permission rights="allow:elasticmapreduce:Describe*" target="*"/>
             <Permission rights="allow:elasticmapreduce:List*" target="*"/>
             <Permission rights="allow:elasticmapreduce:ViewEventsFromAllClustersInConsole" target="*"/>
             <Permission rights="allow:s3:GetObject" target="*"/>
             <Permission rights="allow:s3:ListAllMyBuckets" target="*"/>
             <Permission rights="allow:s3:ListBucket" target="*"/>
             <Permission rights="allow:sdb:Select" target="*"/>
             <Permission rights="allow:cloudwatch:GetMetricStatistics" target="*"/>
           </List>
         </value>
       </entry>

или XML данные, которые содержат list of maps et c.

Существует ли какая-либо инфраструктура, библиотека, которая могла бы проверять такие сложные XML данные?

1 Ответ

1 голос
/ 09 апреля 2020

Взгляните на них для справки.

  1. https://javarevisited.blogspot.com/2017/04/how-to-compare-two-xml-files-in-java.htm
  2. Лучший способ сравнить 2 XML документов в Java
    //creating Diff instance to compare two XML files 
    Diff xmlDiff = new Diff(source, target); 

    //for getting detailed differences between two xml files 
    DetailedDiff detailXmlDiff = new DetailedDiff(xmlDiff);

Надеюсь, это поможет.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...