Forum Discussion

DavidSEM_Admin's avatar
DavidSEM_Admin
Occasional Contributor
4 years ago

Empty Elements in XML with Data from Excel

Hello community

I would like to fill my rigid XML schema with data from an Excel file. Now there are test cases, where I don't need any data from the excel (Data Driven Testing | SoapUI). How can I send the schema correctly although the field is "empty"?

 

Do I need to set some settings right? 

 

For instance:

 

<v13:FamilyName>
<v13:PrimaryValue>XXAD</v13:PrimaryValue>
<!--0 to 5 repetitions:-->
<v13:AlternativeSpelling>
<v13:Value></v13:Value>
<v13:Source>
<v13:Code></v13:Code>

  • richie's avatar
    richie
    Community Hero
    Hey DavidSEM_Admin,

    I dont know what you mean as "fill your rigid XML schema with data"....the schema is the bit that validates your request....its not the XML document/instance (your payload), right?

    Anyway, re: your question. Can you confirm.....are you sourcing a whole xml payload from your excel or are you only sourcing specific tag values in your xml file?

    Its pretty easy if you whole xml payload is in the file, just domt source it.
    Bit more fiddly if youre talking about specific tag values as we need to identify what you mean by "empty".

    Empty elements can appear as
    <elementName />
    or
    <elementName></elementName>

    Can you please clarify exactly what you need?

    Cheers,

    Rich
    • DavidSEM_Admin's avatar
      DavidSEM_Admin
      Occasional Contributor

      Hi richie 

       

      Thank you very much for your reply and for your help. I will try to explain myself more clearly.

       

      • My goal is to source specific tag values in my xml-file from a excel-sheet. For instance with this example request (without header, see below). As you can see i already tagged and generated the values from a DataBase (Excel). Now some of the values will be empty in the Excel Sheet. Now ReadyAPI correctly shows the empty elements like you described:
      •  
      • <v13:FirstName>
        <v13:PrimaryValue>${TestData_DataEntry#FirstName}</v13:PrimaryValue>
        </v13:FirstName>
      • =
      • <v13:FirstName/>  <----- = empty

      Now i need from SoapUIpro to delete these "nested tags" when a request is sended. I have selected "Remove Empty Content " as "true". But it only deletes partially of the tags. It only deletes the "PrimaryValue" and leaves FirstName. I need SoapUI to delete the whole tag and not only "PrimaryValue" 


      Thank you very much for your help. If you need further specification pls let me know

      • ChrisAdams's avatar
        ChrisAdams
        Champion Level 3

        Hi,

         

        If I understand it, you want SoapUI to automatically remove empty/redundant tags, but SoapUI isn't doing this as you need need.

         

        This may confuse matters, and not fix the issue, but as a workaround, use data driven to 'inject' the whole tag into the request instead of just the values.  That way, you have more control over what is inserted into the request, esp empty tags.

         

        Chris