Forum Discussion

ChethanMS's avatar
11 years ago

How to feed data from an excel to an array?


Can anyone please let me know how can I pass values to an array?
I have a requirement where a set of values occur more than once. The number of times the set occur differs for each request. Please help me to automate this scenario.


6 Replies

  • Hi,

    You can add a DataSource test step, add excel file as DataSource and add a groovy script test step, add a loop.
    So lets assume that you have a DataSource property "number" which you want to add in array. Create a test case property "main_array".

    Groovy Script test step
    Data Source loop (DataSource > Groovy Script test step)

    In the groovy script test step add,

    if( context["array"] == null ) context["array"] = []

    context["array"] << context.expand( '${DataSource#Number}' )

    // context["array"]
    // Set the array in testcase property named main array
    testRunner.testCase.setPropertyValue( "main_array", context["array"])

    This should work!

    • Gareth's avatar
      New Contributor



      I have the same problem but the solution proposed does not work.


      I get this error when running the Groovy script:


      groovy.lang.MissingMethodException: No signature of method: com.eviware.soapui.impl.wsdl.WsdlTestCasePro.setPropertyValue() is applicable for argument types: (java.lang.String, java.util.ArrayList) values: [modelOptions, [W5]] Possible solutions: setPropertyValue(java.lang.String, java.lang.String), getPropertyValue(java.lang.String) error at line: 7


      It seems the code is attempting to set a property with an array (java.util.ArrayList) but the method only works setting a string (java.lang.String). I have searched the forums for a solution to this i.e. setting a property with an array - but have not found it.


      Can you please advise how to take a list of values (e.g. in Excel) and then convert that to an array (JSON in this case) to set in a Request.

      • JKambli's avatar

        Convert the array to string since testCase properties can only save strings, you can reconvert it to array when you wish to reuse it.