03. Performance Test Tools and Frameworks - rajendrapenumalli/SDET-Resources GitHub Wiki

3.Performance Test Tools and Frameworks

  • Frontend profiling
  • Java Profiling
  • Java GC tunning
  • SQL tunning

Things that happends when user interacts with browser

When end-users interact with your website in a browser, they need to wait for a number of things to happen:

  1. Initialization: Resolving DNS, establishing TCP connection, proxy handling, and SSL/TLS handshake.
  2. Server Rendering: The server processes the request, fetches necessary data(fetch from cache,if not available fecth from DB, Compute), and renders the web page.
  3. Data Transfer: The HTML, CSS, JavaScript, and other resources are sent from the server to the browser.
  4. Page Rendering: The browser parses the resources, applies styles, executes JavaScript, and displays the page.

RAIL is a model

RAIL is a model that helps you avoid performance issues by setting general performance goals. RAIL stands for:

  1. Response (user interface): Tap to paint in less than 100ms;
  2. Animation: Layout rendering should take less than 16ms per frame;
  3. Idle: Use idle time to compute some work in chunks of 50ms;
  4. Load: The page should be fully loaded in less than 1000ms.

References:

  1. https://docs.blackfire.io/php/training-resources/book/21-frontend-profiling