Forum Discussion

groovyguy's avatar
groovyguy
Champion Level 1
6 years ago
Solved

Trying to figure out how to do this Load Test

I'm relatively new to using LoadUI and I am trying to figure out the best way to handle this certain sort of scenario, and the best way to design this particular Load test. I'm definitely open to suggestions and am looking for guidance. I'll lay out the scenario as best I can. We're trying to do a load-test on a system that is fed data with SOAP requests that contain data from another system. The SOAP request contains the identifier of data in another webservice, and when the request is sent it triggers the data to be fetched and validated, and if it passes, sent on its way to the cache.

 

Here are all the parts:

1.) WebService1: Contains X number of objects that each have a unique identifier.

2.) WebService2: Receives SOAP requests containing at least 1 identifier that must exist in WebService1.

 

I built a DataSource that contains all of the identifiers currently in the cache of WebService1. I want to design/build a simple load test that will parse all X objects from WebService1 and load-test the consumtion/invoke process of WebService2. What's the best way to do this? I was thinking of setting the DataSource of Identifiers as shared across the load test and having the load test run as 10 concurrent users.  Do I need a DataSource-Loop? Will it run until the DataSource is exhausted otherwise?

 

Looking for any suggestions and/or help! Thanks!

  • If I were to do, first design the test in SoapUI.

    Get all the unique ids and save them into a flat file. Assuming that all these ids are existing ones from Webservice1. On contrary, if you do not have data available in flat file, then first create that in separate test so that sufficient data is available for the load test of Webservice2 (hoping that this is the main one targetted for load test)

    Now the actual test is to be created with below steps:
    a. Data source step which reads the flat file with unique ids
    b. SOAP Request step (for webservice 2)
    c. Continue the loop for data source step

    Now, create flat file with small data set. This is to make sure that all the data is looped thru correctly.

    Next step is to create the load test and use the appropriate strategy / how long the test should run etc. Execute it with same sample data set.

    If all goes fine, then use the full data file and test it.

    Load tests can be iterative as to see how the application performance with given test parameters such as number of threads (users), time period and see the through put.
    Try to find out changing test parameters which gives the maxmum throughput.


    I believe, that the same project can be run from Load UI as well, haven't tried though.

    Hope this helps!

3 Replies

  • nmrao's avatar
    nmrao
    Champion Level 3
    If I were to do, first design the test in SoapUI.

    Get all the unique ids and save them into a flat file. Assuming that all these ids are existing ones from Webservice1. On contrary, if you do not have data available in flat file, then first create that in separate test so that sufficient data is available for the load test of Webservice2 (hoping that this is the main one targetted for load test)

    Now the actual test is to be created with below steps:
    a. Data source step which reads the flat file with unique ids
    b. SOAP Request step (for webservice 2)
    c. Continue the loop for data source step

    Now, create flat file with small data set. This is to make sure that all the data is looped thru correctly.

    Next step is to create the load test and use the appropriate strategy / how long the test should run etc. Execute it with same sample data set.

    If all goes fine, then use the full data file and test it.

    Load tests can be iterative as to see how the application performance with given test parameters such as number of threads (users), time period and see the through put.
    Try to find out changing test parameters which gives the maxmum throughput.


    I believe, that the same project can be run from Load UI as well, haven't tried though.

    Hope this helps!
    • groovyguy's avatar
      groovyguy
      Champion Level 1

      Thanks for the help, nmrao. I kind of did what you said and it worked well enough for what I needed. Thanks!