Search code examples
angularjsjmetergoogle-chrome-devtoolsperformance-testing

How to do performance testing for multiple user using Chrome Dev Tool for angular JS Web Site


I have developed an Angular JS Web Console. Web Console is basically creating, deleting, retrieving and deleting Users. I want to do its performance testing using Chrome Dev Tool or Jmeter

If I use Jmeter how can I actually monitor the behavior of web console itself because from Jmeter I can only check the response time of API.

If I use chrome dev tool then how can I test it for multiple users against post and get operations.

For Example I have a Scenario that 10 Users are registering or signing in at a time. How can I test this behaviour.

                                      OR

50 Persons are creating or deleting or retrieving a user using a form at a time.

                                      OR

What will be the behavior of web console if 50 users are using web console at a time.

NOTE: Web Console is deployed on server. I want to test it locally and on server as well.

Need help. Thanks in advance!


Solution

  • Server side performance and client-side performance are different beasts so you can break down your performance testing requirements into 2 major parts:

    1. Conduct the required load onto your web console using JMeter HTTP Request samplers. Make sure you configure JMeter properly to handle cookies, cache, headers, embedded resources (scripts, styles, images). See How To Make JMeter Behave More Like A Real Browser article for comprehensive explanation with regards to how to configure JMeter properly. If you need the requests to be fired in exactly the same moment of time also consider Synchronizing Timer

    2. As JMeter neither actually render pages nor executes client-side JavaScript you can check client-side performance using one of below approaches (or any combination)

      • Using YSlow software
      • Using aforementioned Chrome Dev Tools
      • Using WebDriver Sampler (which provides Selenium and JMeter integration) so you will be able to measure page rendering time. If necessary you can add custom scripting logic using Navigation Timing API to get some extended information on page loading events in automated manner