1

I want to load test an application which does two things when I click on the button after filling the details -

  1. Make a call to 3rd party merchant API to validate the details entered
  2. Do some read & write operation in the DB.

So I want to get the performance of above and the only think I have access to is the application URL which I can open in the browser, fill the details and click submit.

The application is written in Java, so can anyone help me how to load test this kind of application?

2
  • Probably you don't want to load test the merchant, so this will be mocked out. Now, about the DB, is your application desktop or are we talking about a web app that calls a service? If the former, can't you trigger the objects that interact with the DB? If the later, can't you make the same calls to the service? Sep 29, 2021 at 8:46
  • It is a web application and I thought of the same thing but currently I don't have access to any of the calls and I was told to research if we can do that without any knowledge of the backend Sep 29, 2021 at 10:09

1 Answer 1

2

Given you have jmeter in tags here is a JMeter-related solution.

Load testing is the process ensuring that the application can handle the anticipated load hence the process of load testing a web application is simulating real users using real browsers accessing the web application.

So you don't need to know about the APIs or backend technologies, you need to perform some form of black-box testing and all you need to do is to replicate the network footprint of the real users which are using real browsers.

Browsers don't do any magic, they just send HTTP Requests, receive responses and render the responses so you could see it. JMeter can send the same HTTP Requests using HTTP Request sampler (and some configuration elements so JMeter would behave like a real browser)

Assuming all above you need to do the following:

  1. Record your application usage scenario(s) using JMeter's HTTP(S) Test Script Recorder and your browser
  2. Perform correlation of dynamic parameters and parameterization of i.e. user credentials so each JMeter thread (virtual user) would use its own login/password combination
  3. Dry-run your test with 1-2 users/iterations to ensure that it's doing what it's supposed to be doing by looking into requests and responses details in the View Results Tree listener
  4. Run your test with the anticipated number of virtual users
  5. Analyze the results using HTML Reporting Dashboard, identify bottlenecks if any, raise issues, etc.
1
  • I have already recorded the steps and replayed those steps. So based on my requirements you think doing the record & play will give me the performance results of my web app? Sep 29, 2021 at 10:13

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge that you have read and understand our privacy policy and code of conduct.

Not the answer you're looking for? Browse other questions tagged or ask your own question.