3

I need to run concurrency test on website. I need to check various parameters such as response time, request send to site, data received, and whether the data is received correctly (e.g. if multiple users log into the site, are the data displayed for user). The data of one user should not be displayed to any other user. How do I do automation for such a scenario?

I have checked JMeter and Blaze meter but done with concurrency testing it has multiple user, request, response time, not no way to check concurrency.

For example, suppose user "A" logs into the website but after logging into site he see details of person "B" so is there anyway to check this scenario? I am using all open source tools for testing, such as selenium,jmeter, java etc.

1
  • Everything given in your question can be done using Jmeter..what issue you are getting.? Apr 13, 2015 at 8:57

3 Answers 3

3

Your question is a little bit general, that's why I'll also give you a general answer.

Concurrency can be measured in different ways. Let's assume you have a web-site where the users can execute some actions by interacting with some elements on the web-pages. Here if we're talking about concurrency, we are meaning concurrent (simultaneous) users interacting with web-pages.

In this situation your would have to:

  1. Define most popular usage scenarios of the web-site by users (Google Analytics or other web-analytics platform can help here)
  2. Record with help of tool (like Jmeter proxy) those scenarios and parametrize them in order to make as realistic as possible.
  3. Define baseline numbers of your performance test:
    • How many users are "normal" for your web-site?
    • How many users are "normal"+20% for your site?
    • How many users are "normal"+50% for your site?

With all of that you'll be able to creat your load/concurrency model where will be defined how many user simultaneously interact with your application, and with what level of load (+20% from normal, +50% from normal, etc.).

Depending on the tool implementation of such model will of course vary. But the most important things is to build a realistic load model in order to simulate user actions/interactions with web-site as close as possible to reality.

1

It is not a typical load testing project when you need to create 100 thousand virtual users. More than half of all web load tests are conducted with just a thousand virtual users or less, because higher load is not actually anticipated on the target web site in production. Note that we are not talking about the number of users per day or hour. Those are concurrent users working with the web site simultaneously, in parallel.

At the same time a huge load mentioned in the title of this article is not a fantasy. Such tests are really required for web sites with growing audience and advanced client functionality. Imagine any web site that delivers customizable user-dependent content updating dynamically: stock quotes, online meetings and chats, monitoring tools, etc. When a user of such web application leaves an open browser page, it keeps refreshing every minute sending a repeating request to the web site. In such case a typical user session may last for hours resulting in a rather big number of concurrent sessions at any time moment.

0

JMeter Provides different Assertion types so you can easily apply an assertion to your request to check:

  • Response body/headers/message/code
  • Request duration
  • Response size
  • etc.

See How to Use JMeter Assertions in 3 Easy Steps guide for detailed information on each assertion provided.

You can check concurrency i.e. via Active Threads Over Time Listener or Server Hits per Second graph or both.

Your Answer

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

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