SlideShare a Scribd company logo
Browser-Based
Load Testing with
Grafana K6
Himanshu Gupta (Software Consultant)
Test Automation Competency
1. Introduction to Load Testing
• What is Load Testing?
• Why Load Testing is important?
• Real World Example of Performance Failure
2. Overview of Browser-Based Load Testing
• Browser-Based Load Testing & its Key Features
 Why Browser-Based Load Testing?
 Browser Based Testing over API Testing
 Pros & Cons of Browser Based Testing
3. Selection of Tool for Browser-Based Load Testing
4. Introduction to K6
• Leveraging K6 Browser Module
• Use Case of Browser Testing
• Writing a Basic Browser Level K6 Script
• Running Browser Level K6 Script
• Understanding Browser Metrices Output
5. Reporting Mechanism
6. Leveraging POM in K6
• What is Page Object Model?
 Implementation of Page Object Model in K6
7. Tips for Writing Browser level Scripts
8. Common Pitfalls to avoid in Browser-Based Load Testing
9. Best Practices for Browser-Based Load Testing
10. Demo/QnA
WHAT is Load Testing
The goal is to assess how well the application can handle a specific amount of concurrent
users or transactions while maintaining acceptable performance levels.
WHY Load Testing
Load testing is particularly important for several reasons:
• Resource Planning
• Performance Optimization
• User Experience Optimization
• Identifying Performance Bottlenecks
• Reliability and Stability
Real World Examples of Performance Failure
Let's Discuss Browser-Based Load Testing
Browser-based load testing verifies the frontend performance of an application by simulating real users using a
browser to access your website. Unlike traditional load testing tools that operate at the protocol level, browser-
based load testing tools interact with web applications just like real users do, using web browsers.
For example, a browser-based load testing script might include instructions to navigate to a page, click on a
button and type out text on a form. Those user actions then trigger underlying requests on the protocol layer,
but only user actions are scripted in browser-based testing.
Key features of browser-based load testing include:
o Realistic User Scenarios
o JavaScript Execution
o Browser Diversity
o Load Distribution
Why Browser Based Load Testing
Browser Based Testing over API Testing
1. Scope
a. Targets the underlying application servers.
b. Focuses on how assets are processed, served, and
downloaded.
2. Testing Environment:
a. Conducted on application servers in a production-like setup..
3. Flexibility:
a. API testing allows targeting specific components.
4. Early Issue Identification:
a. Chances of finding performance issues in early stages.
5. Resource Intensity:
a. Less resource-intensive compared to frontend testing.
6. Suitability for Load Testing:
a. More suitable for generating high loads on the server..
API Based Testing
1. Scope:
a. Measures end-user experience at the interface level.
b. Concerned with how and when page elements
appear.
2. Testing Environment:
a. Requires a fully integrated environment with UI.
3. Flexibility:
a. Primarily focused on the user interface level.
4. Early Issue Identification:
a. Excels at identifying issues on a micro-level.
5. Resource Intensity:
a. More resource-intensive, especially for automation.
6. Suitability for Load Testing:
a. Tends to be easier to run on a small scale due to
resource constraints.
Browser Based Testing
Pros & Cons of Browser-Based Load Testing
Higher Memory Usage
Occasionally Longer Runtime
Limited Browser Environment
Capabilities
Simple Scripts
User Perspective
Low Maintenance
Front-end Optimization
Reduced Test Complexities
Tool Selection For Browser Based Load Testing
S
E
I
U
R
C
Scripting Language
Choose a tool that supports a scripting language your
team is comfortable with or one that aligns with your
project requirements.
Cost
Consider the licensing costs or any associated
costs with the tool, especially if you are working
within budget constraints.
Integration
Check for integration capabilities with other tools and
your existing CI/CD pipelines.
Ease of Use
Consider the learning curve and ease of use
for your team, especially if they are not
experienced with a particular tool.
User Simulation
Evaluate how accurately the tool can simulate real user
interactions. This is crucial for realistic load testing.
Reporting & Analysis
Look for tools that provide detailed and meaningful
reports, as well as options for result analysis.
Introduction to K6
• Grafana K6 is an open-source load testing tool that makes
performance testing easy and production for developer and DevOps
teams.
• K6 benefits from a vibrant community, providing support, sharing
scripts, and contributing to continuous improvement.
• K6 is compatible with various systems and environments, making
it suitable for a wide range of applications and use cases.
• K6 empowers teams to identify and address performance issues
early in the development lifecycle, ensuring robust and
scalable applications.
Leveraging K6 Browser Module
• The browser module brings browser automation and end-to-end web
testing to k6 while supporting core k6 features. It enables you to get
insights from your front-end application during performance testing.
• You can now mix browser-level and protocol-level tests in a single and
unified script using k6. This can simulate the bulk of your traffic from
your protocol-level tests and run one or two virtual users on a browser
level to mimic how a user interacts with your website, thus leveraging a
Hybrid approach to Performance Testing.
• The browser module offers a unique solution as you don’t have to use
separate tools to test your frontend and backend systems. It also offers
a simplified experience and aggregated view of performance metrics.
Use case for Browser Testing
• The main use case for the browser module is to test performance on the browser level. Browser-level testing
provides a way to measure user experience and find issues that are difficult to catch on the protocol level.
Browser-level testing can help you answer questions like:
• When my application is receiving thousands of simultaneous requests from the protocol-level, what happens to
the frontend?
• How can I get metrics specific to browsers, like total page load time?
• Are all my elements interactive on the frontend?
• Are there any loading spinners that take a long time to disappear?
Writing a Basic Browser level K6 Script
Running Browser level K6 Script
Execute this command to run tests:
K6_BROWSER_HEADLESS=false k6 run script.js
Understanding the Browser Metrics Output
When a browser test finishes, k6 reports a top-level overview of the aggregated browser metrics output. HTTP
requests that were triggered by the browser test are also reported. Below is the example of browser Metrics:
Reporting Mechanism
• The summary report provides a high-level overview
of the key performance indicators from your test.
It's useful for quickly understanding the overall
health of your system during the test.
• Information Included:
− Total number of virtual users (VUs).
− Duration of the test.
− Response time percentiles (e.g., 50th, 95th, 99th
percentiles).
− Request and response statistics.
− Error rate.
− Virtual user distribution.
Summary Report
• The HTML report is more detailed and provides a
visual representation of the test results. It includes
various graphs and charts that can help in-depth
analysis.
• Information Included:
− Response time trends over time.
− Requests per second (RPS) trends.
− Latency distributions.
− Error rates.
− Virtual user activity over time.
− Custom metrics and their trends.
HTML Report
Leveraging Page Object Model (POM) in K6
 Page Object Model, also known as POM, is a
design pattern that creates an object repository
for storing all web elements.
 It helps reduce code duplication and improves test
case maintenance. In Page Object Model, consider
each web page of an application as a class file.
 The main idea behind the Page Object Model is to
abstract the details of the user interface
(UI) components and their interactions with the
underlying code, making the automation code
more modular and readable.
Implementation of Page Object Model in K6
02
01
Tips For Writing Browser Level Scripts
03
Script User Actions,
not Requests
04
Lorem Ipsum is
simply dummy text of
the printing.
Identify Unique
Selectors Lorem Ipsum is
simply dummy text of
the printing.
Use Elements to
Verify Responses Lorem Ipsum is
simply dummy text of
the printing.
Take Screenshots for
every action while
debugging
Best Practices for Browser Based Load Testing
01 02
03
05
04
Identify business goals
Lorem ipsum 3
Always keep end-users in mind
Ramp-Up Gradually
Script Realistic User Scenarios
Continuous Monitoring
Lorem ipsum 6
Choose a suitable tool
06
Common Pitfalls to Avoid in Browser-Based Load Testing
• Ignoring Realism
• Neglect Data Variability
• Inadequate Monitoring
• Overlooking Isolation
• Poor Documentation
• Incomplete Reporting
• Limited Test duration
• Ignoring User Experience
• Static Parameterization
Browser-Based Load Testing with Grafana K6
Browser-Based Load Testing with Grafana K6
Browser-Based Load Testing with Grafana K6
Ad

More Related Content

What's hot (20)

Jira as a Test Management Tool
Jira as a Test Management ToolJira as a Test Management Tool
Jira as a Test Management Tool
Xpand IT
 
Test Case Management Tools
Test Case Management ToolsTest Case Management Tools
Test Case Management Tools
Malang QA Community
 
Performance testing : An Overview
Performance testing : An OverviewPerformance testing : An Overview
Performance testing : An Overview
sharadkjain
 
Performance Test Plan - Sample 2
Performance Test Plan - Sample 2Performance Test Plan - Sample 2
Performance Test Plan - Sample 2
Atul Pant
 
Hybrid framework
Hybrid frameworkHybrid framework
Hybrid framework
Sudhakar Mangi
 
LoadRunner Performance Testing
LoadRunner Performance TestingLoadRunner Performance Testing
LoadRunner Performance Testing
Atul Pant
 
Automation testing
Automation testingAutomation testing
Automation testing
Biswajit Pratihari
 
XRAY for Jira
XRAY for JiraXRAY for Jira
XRAY for Jira
Mike Brosnan
 
Performance Testing
Performance TestingPerformance Testing
Performance Testing
Selin Gungor
 
Distributed load testing with k6
Distributed load testing with k6Distributed load testing with k6
Distributed load testing with k6
Thijs Feryn
 
Test Automation: A Roadmap For Sucesss
Test Automation: A Roadmap For SucesssTest Automation: A Roadmap For Sucesss
Test Automation: A Roadmap For Sucesss
David O'Dowd
 
Best practices for test automation
Best practices for test automationBest practices for test automation
Best practices for test automation
David Tzemach
 
Introduction to performance testing
Introduction to performance testingIntroduction to performance testing
Introduction to performance testing
Richard Bishop
 
Walking through the Spring Stack for Apache Kafka with Soby Chacko | Kafka S...
 Walking through the Spring Stack for Apache Kafka with Soby Chacko | Kafka S... Walking through the Spring Stack for Apache Kafka with Soby Chacko | Kafka S...
Walking through the Spring Stack for Apache Kafka with Soby Chacko | Kafka S...
HostedbyConfluent
 
Performance testing presentation
Performance testing presentationPerformance testing presentation
Performance testing presentation
Belatrix Software
 
Space Camp June 2022 - API First.pdf
Space Camp June 2022 - API First.pdfSpace Camp June 2022 - API First.pdf
Space Camp June 2022 - API First.pdf
Postman
 
Kafka Streams State Stores Being Persistent
Kafka Streams State Stores Being PersistentKafka Streams State Stores Being Persistent
Kafka Streams State Stores Being Persistent
confluent
 
Test Automation - Keytorc Approach
Test Automation - Keytorc Approach Test Automation - Keytorc Approach
Test Automation - Keytorc Approach
Keytorc Software Testing Services
 
SonarQube - Should I Stay or Should I Go ?
SonarQube - Should I Stay or Should I Go ? SonarQube - Should I Stay or Should I Go ?
SonarQube - Should I Stay or Should I Go ?
Geeks Anonymes
 
Narmesh 3 yrs Manual testing resume
Narmesh 3 yrs Manual testing resumeNarmesh 3 yrs Manual testing resume
Narmesh 3 yrs Manual testing resume
narmesh enukurthi
 
Jira as a Test Management Tool
Jira as a Test Management ToolJira as a Test Management Tool
Jira as a Test Management Tool
Xpand IT
 
Performance testing : An Overview
Performance testing : An OverviewPerformance testing : An Overview
Performance testing : An Overview
sharadkjain
 
Performance Test Plan - Sample 2
Performance Test Plan - Sample 2Performance Test Plan - Sample 2
Performance Test Plan - Sample 2
Atul Pant
 
LoadRunner Performance Testing
LoadRunner Performance TestingLoadRunner Performance Testing
LoadRunner Performance Testing
Atul Pant
 
Performance Testing
Performance TestingPerformance Testing
Performance Testing
Selin Gungor
 
Distributed load testing with k6
Distributed load testing with k6Distributed load testing with k6
Distributed load testing with k6
Thijs Feryn
 
Test Automation: A Roadmap For Sucesss
Test Automation: A Roadmap For SucesssTest Automation: A Roadmap For Sucesss
Test Automation: A Roadmap For Sucesss
David O'Dowd
 
Best practices for test automation
Best practices for test automationBest practices for test automation
Best practices for test automation
David Tzemach
 
Introduction to performance testing
Introduction to performance testingIntroduction to performance testing
Introduction to performance testing
Richard Bishop
 
Walking through the Spring Stack for Apache Kafka with Soby Chacko | Kafka S...
 Walking through the Spring Stack for Apache Kafka with Soby Chacko | Kafka S... Walking through the Spring Stack for Apache Kafka with Soby Chacko | Kafka S...
Walking through the Spring Stack for Apache Kafka with Soby Chacko | Kafka S...
HostedbyConfluent
 
Performance testing presentation
Performance testing presentationPerformance testing presentation
Performance testing presentation
Belatrix Software
 
Space Camp June 2022 - API First.pdf
Space Camp June 2022 - API First.pdfSpace Camp June 2022 - API First.pdf
Space Camp June 2022 - API First.pdf
Postman
 
Kafka Streams State Stores Being Persistent
Kafka Streams State Stores Being PersistentKafka Streams State Stores Being Persistent
Kafka Streams State Stores Being Persistent
confluent
 
SonarQube - Should I Stay or Should I Go ?
SonarQube - Should I Stay or Should I Go ? SonarQube - Should I Stay or Should I Go ?
SonarQube - Should I Stay or Should I Go ?
Geeks Anonymes
 
Narmesh 3 yrs Manual testing resume
Narmesh 3 yrs Manual testing resumeNarmesh 3 yrs Manual testing resume
Narmesh 3 yrs Manual testing resume
narmesh enukurthi
 

Similar to Browser-Based Load Testing with Grafana K6 (20)

Neev Load Testing Services
Neev Load Testing ServicesNeev Load Testing Services
Neev Load Testing Services
Neev Technologies
 
Automation Tools Overview
Automation Tools OverviewAutomation Tools Overview
Automation Tools Overview
Murageppa-QA
 
Laravel Load Testing: Strategies and Tools
Laravel Load Testing: Strategies and ToolsLaravel Load Testing: Strategies and Tools
Laravel Load Testing: Strategies and Tools
Muhammad Shehata
 
Accessibility Testing - Using Asqatasun - Meetup Webinar
Accessibility Testing - Using Asqatasun - Meetup WebinarAccessibility Testing - Using Asqatasun - Meetup Webinar
Accessibility Testing - Using Asqatasun - Meetup Webinar
Keyur Shah
 
The Ultimate Guide to Performance Testing in Low-Code, No-Code Environments.pdf
The Ultimate Guide to Performance Testing in Low-Code, No-Code Environments.pdfThe Ultimate Guide to Performance Testing in Low-Code, No-Code Environments.pdf
The Ultimate Guide to Performance Testing in Low-Code, No-Code Environments.pdf
flufftailshop
 
Top Performance Testing Tools of 2025: Ensure Speed, Stability, and Scale
Top Performance Testing Tools of 2025: Ensure Speed, Stability, and ScaleTop Performance Testing Tools of 2025: Ensure Speed, Stability, and Scale
Top Performance Testing Tools of 2025: Ensure Speed, Stability, and Scale
Shubham Joshi
 
The Ultimate Guide to Performance Testing in Low-Code, No-Code Environments.pdf
The Ultimate Guide to Performance Testing in Low-Code, No-Code Environments.pdfThe Ultimate Guide to Performance Testing in Low-Code, No-Code Environments.pdf
The Ultimate Guide to Performance Testing in Low-Code, No-Code Environments.pdf
kalichargn70th171
 
The Ultimate Guide to Performance Testing in Low-Code, No-Code Environments (...
The Ultimate Guide to Performance Testing in Low-Code, No-Code Environments (...The Ultimate Guide to Performance Testing in Low-Code, No-Code Environments (...
The Ultimate Guide to Performance Testing in Low-Code, No-Code Environments (...
kalichargn70th171
 
Understanding Automated Testing Tools for Web Applications.pdf
Understanding Automated Testing Tools for Web Applications.pdfUnderstanding Automated Testing Tools for Web Applications.pdf
Understanding Automated Testing Tools for Web Applications.pdf
kalichargn70th171
 
Automation Tool Overview
Automation Tool OverviewAutomation Tool Overview
Automation Tool Overview
ANKUR-BA
 
Automation Tools Overview
Automation Tools OverviewAutomation Tools Overview
Automation Tools Overview
Sachin-QA
 
Web and load testing with Visual Studio 2010 Ultimate
Web and load testing with Visual Studio 2010 UltimateWeb and load testing with Visual Studio 2010 Ultimate
Web and load testing with Visual Studio 2010 Ultimate
Abhimanyu Singhal
 
Top 10 Tools for Automated Performance Testing.pdf
Top 10 Tools for Automated Performance Testing.pdfTop 10 Tools for Automated Performance Testing.pdf
Top 10 Tools for Automated Performance Testing.pdf
khushnuma khan
 
Improve Your Frontend Agility with Proven Optimization Methods
Improve Your Frontend Agility with Proven Optimization MethodsImprove Your Frontend Agility with Proven Optimization Methods
Improve Your Frontend Agility with Proven Optimization Methods
Inexture Solutions
 
Asynchronous API Testing: Trends, Tools & More | Calidad Infotech
Asynchronous API Testing: Trends, Tools & More | Calidad Infotech Asynchronous API Testing: Trends, Tools & More | Calidad Infotech
Asynchronous API Testing: Trends, Tools & More | Calidad Infotech
Calidad Infotech
 
Umesh_LR...
Umesh_LR...Umesh_LR...
Umesh_LR...
umesh bandi
 
28791456 web-testing
28791456 web-testing28791456 web-testing
28791456 web-testing
Rushikesh Bhongade
 
Step-by-Step Process of Angular Web Development
Step-by-Step Process of Angular Web DevelopmentStep-by-Step Process of Angular Web Development
Step-by-Step Process of Angular Web Development
Softradix Technologies
 
Asha_4Yrs_Manual_3_Yrs_Automation
Asha_4Yrs_Manual_3_Yrs_AutomationAsha_4Yrs_Manual_3_Yrs_Automation
Asha_4Yrs_Manual_3_Yrs_Automation
cnasha
 
leenaaggarwal
leenaaggarwalleenaaggarwal
leenaaggarwal
leena agarwal
 
Automation Tools Overview
Automation Tools OverviewAutomation Tools Overview
Automation Tools Overview
Murageppa-QA
 
Laravel Load Testing: Strategies and Tools
Laravel Load Testing: Strategies and ToolsLaravel Load Testing: Strategies and Tools
Laravel Load Testing: Strategies and Tools
Muhammad Shehata
 
Accessibility Testing - Using Asqatasun - Meetup Webinar
Accessibility Testing - Using Asqatasun - Meetup WebinarAccessibility Testing - Using Asqatasun - Meetup Webinar
Accessibility Testing - Using Asqatasun - Meetup Webinar
Keyur Shah
 
The Ultimate Guide to Performance Testing in Low-Code, No-Code Environments.pdf
The Ultimate Guide to Performance Testing in Low-Code, No-Code Environments.pdfThe Ultimate Guide to Performance Testing in Low-Code, No-Code Environments.pdf
The Ultimate Guide to Performance Testing in Low-Code, No-Code Environments.pdf
flufftailshop
 
Top Performance Testing Tools of 2025: Ensure Speed, Stability, and Scale
Top Performance Testing Tools of 2025: Ensure Speed, Stability, and ScaleTop Performance Testing Tools of 2025: Ensure Speed, Stability, and Scale
Top Performance Testing Tools of 2025: Ensure Speed, Stability, and Scale
Shubham Joshi
 
The Ultimate Guide to Performance Testing in Low-Code, No-Code Environments.pdf
The Ultimate Guide to Performance Testing in Low-Code, No-Code Environments.pdfThe Ultimate Guide to Performance Testing in Low-Code, No-Code Environments.pdf
The Ultimate Guide to Performance Testing in Low-Code, No-Code Environments.pdf
kalichargn70th171
 
The Ultimate Guide to Performance Testing in Low-Code, No-Code Environments (...
The Ultimate Guide to Performance Testing in Low-Code, No-Code Environments (...The Ultimate Guide to Performance Testing in Low-Code, No-Code Environments (...
The Ultimate Guide to Performance Testing in Low-Code, No-Code Environments (...
kalichargn70th171
 
Understanding Automated Testing Tools for Web Applications.pdf
Understanding Automated Testing Tools for Web Applications.pdfUnderstanding Automated Testing Tools for Web Applications.pdf
Understanding Automated Testing Tools for Web Applications.pdf
kalichargn70th171
 
Automation Tool Overview
Automation Tool OverviewAutomation Tool Overview
Automation Tool Overview
ANKUR-BA
 
Automation Tools Overview
Automation Tools OverviewAutomation Tools Overview
Automation Tools Overview
Sachin-QA
 
Web and load testing with Visual Studio 2010 Ultimate
Web and load testing with Visual Studio 2010 UltimateWeb and load testing with Visual Studio 2010 Ultimate
Web and load testing with Visual Studio 2010 Ultimate
Abhimanyu Singhal
 
Top 10 Tools for Automated Performance Testing.pdf
Top 10 Tools for Automated Performance Testing.pdfTop 10 Tools for Automated Performance Testing.pdf
Top 10 Tools for Automated Performance Testing.pdf
khushnuma khan
 
Improve Your Frontend Agility with Proven Optimization Methods
Improve Your Frontend Agility with Proven Optimization MethodsImprove Your Frontend Agility with Proven Optimization Methods
Improve Your Frontend Agility with Proven Optimization Methods
Inexture Solutions
 
Asynchronous API Testing: Trends, Tools & More | Calidad Infotech
Asynchronous API Testing: Trends, Tools & More | Calidad Infotech Asynchronous API Testing: Trends, Tools & More | Calidad Infotech
Asynchronous API Testing: Trends, Tools & More | Calidad Infotech
Calidad Infotech
 
Step-by-Step Process of Angular Web Development
Step-by-Step Process of Angular Web DevelopmentStep-by-Step Process of Angular Web Development
Step-by-Step Process of Angular Web Development
Softradix Technologies
 
Asha_4Yrs_Manual_3_Yrs_Automation
Asha_4Yrs_Manual_3_Yrs_AutomationAsha_4Yrs_Manual_3_Yrs_Automation
Asha_4Yrs_Manual_3_Yrs_Automation
cnasha
 
Ad

More from Knoldus Inc. (20)

Angular Hydration Presentation (FrontEnd)
Angular Hydration Presentation (FrontEnd)Angular Hydration Presentation (FrontEnd)
Angular Hydration Presentation (FrontEnd)
Knoldus Inc.
 
Optimizing Test Execution: Heuristic Algorithm for Self-Healing
Optimizing Test Execution: Heuristic Algorithm for Self-HealingOptimizing Test Execution: Heuristic Algorithm for Self-Healing
Optimizing Test Execution: Heuristic Algorithm for Self-Healing
Knoldus Inc.
 
Self-Healing Test Automation Framework - Healenium
Self-Healing Test Automation Framework - HealeniumSelf-Healing Test Automation Framework - Healenium
Self-Healing Test Automation Framework - Healenium
Knoldus Inc.
 
Kanban Metrics Presentation (Project Management)
Kanban Metrics Presentation (Project Management)Kanban Metrics Presentation (Project Management)
Kanban Metrics Presentation (Project Management)
Knoldus Inc.
 
Java 17 features and implementation.pptx
Java 17 features and implementation.pptxJava 17 features and implementation.pptx
Java 17 features and implementation.pptx
Knoldus Inc.
 
Chaos Mesh Introducing Chaos in Kubernetes
Chaos Mesh Introducing Chaos in KubernetesChaos Mesh Introducing Chaos in Kubernetes
Chaos Mesh Introducing Chaos in Kubernetes
Knoldus Inc.
 
GraalVM - A Step Ahead of JVM Presentation
GraalVM - A Step Ahead of JVM PresentationGraalVM - A Step Ahead of JVM Presentation
GraalVM - A Step Ahead of JVM Presentation
Knoldus Inc.
 
Nomad by HashiCorp Presentation (DevOps)
Nomad by HashiCorp Presentation (DevOps)Nomad by HashiCorp Presentation (DevOps)
Nomad by HashiCorp Presentation (DevOps)
Knoldus Inc.
 
Nomad by HashiCorp Presentation (DevOps)
Nomad by HashiCorp Presentation (DevOps)Nomad by HashiCorp Presentation (DevOps)
Nomad by HashiCorp Presentation (DevOps)
Knoldus Inc.
 
DAPR - Distributed Application Runtime Presentation
DAPR - Distributed Application Runtime PresentationDAPR - Distributed Application Runtime Presentation
DAPR - Distributed Application Runtime Presentation
Knoldus Inc.
 
Introduction to Azure Virtual WAN Presentation
Introduction to Azure Virtual WAN PresentationIntroduction to Azure Virtual WAN Presentation
Introduction to Azure Virtual WAN Presentation
Knoldus Inc.
 
Introduction to Argo Rollouts Presentation
Introduction to Argo Rollouts PresentationIntroduction to Argo Rollouts Presentation
Introduction to Argo Rollouts Presentation
Knoldus Inc.
 
Intro to Azure Container App Presentation
Intro to Azure Container App PresentationIntro to Azure Container App Presentation
Intro to Azure Container App Presentation
Knoldus Inc.
 
Insights Unveiled Test Reporting and Observability Excellence
Insights Unveiled Test Reporting and Observability ExcellenceInsights Unveiled Test Reporting and Observability Excellence
Insights Unveiled Test Reporting and Observability Excellence
Knoldus Inc.
 
Introduction to Splunk Presentation (DevOps)
Introduction to Splunk Presentation (DevOps)Introduction to Splunk Presentation (DevOps)
Introduction to Splunk Presentation (DevOps)
Knoldus Inc.
 
Code Camp - Data Profiling and Quality Analysis Framework
Code Camp - Data Profiling and Quality Analysis FrameworkCode Camp - Data Profiling and Quality Analysis Framework
Code Camp - Data Profiling and Quality Analysis Framework
Knoldus Inc.
 
AWS: Messaging Services in AWS Presentation
AWS: Messaging Services in AWS PresentationAWS: Messaging Services in AWS Presentation
AWS: Messaging Services in AWS Presentation
Knoldus Inc.
 
Amazon Cognito: A Primer on Authentication and Authorization
Amazon Cognito: A Primer on Authentication and AuthorizationAmazon Cognito: A Primer on Authentication and Authorization
Amazon Cognito: A Primer on Authentication and Authorization
Knoldus Inc.
 
ZIO Http A Functional Approach to Scalable and Type-Safe Web Development
ZIO Http A Functional Approach to Scalable and Type-Safe Web DevelopmentZIO Http A Functional Approach to Scalable and Type-Safe Web Development
ZIO Http A Functional Approach to Scalable and Type-Safe Web Development
Knoldus Inc.
 
Managing State & HTTP Requests In Ionic.
Managing State & HTTP Requests In Ionic.Managing State & HTTP Requests In Ionic.
Managing State & HTTP Requests In Ionic.
Knoldus Inc.
 
Angular Hydration Presentation (FrontEnd)
Angular Hydration Presentation (FrontEnd)Angular Hydration Presentation (FrontEnd)
Angular Hydration Presentation (FrontEnd)
Knoldus Inc.
 
Optimizing Test Execution: Heuristic Algorithm for Self-Healing
Optimizing Test Execution: Heuristic Algorithm for Self-HealingOptimizing Test Execution: Heuristic Algorithm for Self-Healing
Optimizing Test Execution: Heuristic Algorithm for Self-Healing
Knoldus Inc.
 
Self-Healing Test Automation Framework - Healenium
Self-Healing Test Automation Framework - HealeniumSelf-Healing Test Automation Framework - Healenium
Self-Healing Test Automation Framework - Healenium
Knoldus Inc.
 
Kanban Metrics Presentation (Project Management)
Kanban Metrics Presentation (Project Management)Kanban Metrics Presentation (Project Management)
Kanban Metrics Presentation (Project Management)
Knoldus Inc.
 
Java 17 features and implementation.pptx
Java 17 features and implementation.pptxJava 17 features and implementation.pptx
Java 17 features and implementation.pptx
Knoldus Inc.
 
Chaos Mesh Introducing Chaos in Kubernetes
Chaos Mesh Introducing Chaos in KubernetesChaos Mesh Introducing Chaos in Kubernetes
Chaos Mesh Introducing Chaos in Kubernetes
Knoldus Inc.
 
GraalVM - A Step Ahead of JVM Presentation
GraalVM - A Step Ahead of JVM PresentationGraalVM - A Step Ahead of JVM Presentation
GraalVM - A Step Ahead of JVM Presentation
Knoldus Inc.
 
Nomad by HashiCorp Presentation (DevOps)
Nomad by HashiCorp Presentation (DevOps)Nomad by HashiCorp Presentation (DevOps)
Nomad by HashiCorp Presentation (DevOps)
Knoldus Inc.
 
Nomad by HashiCorp Presentation (DevOps)
Nomad by HashiCorp Presentation (DevOps)Nomad by HashiCorp Presentation (DevOps)
Nomad by HashiCorp Presentation (DevOps)
Knoldus Inc.
 
DAPR - Distributed Application Runtime Presentation
DAPR - Distributed Application Runtime PresentationDAPR - Distributed Application Runtime Presentation
DAPR - Distributed Application Runtime Presentation
Knoldus Inc.
 
Introduction to Azure Virtual WAN Presentation
Introduction to Azure Virtual WAN PresentationIntroduction to Azure Virtual WAN Presentation
Introduction to Azure Virtual WAN Presentation
Knoldus Inc.
 
Introduction to Argo Rollouts Presentation
Introduction to Argo Rollouts PresentationIntroduction to Argo Rollouts Presentation
Introduction to Argo Rollouts Presentation
Knoldus Inc.
 
Intro to Azure Container App Presentation
Intro to Azure Container App PresentationIntro to Azure Container App Presentation
Intro to Azure Container App Presentation
Knoldus Inc.
 
Insights Unveiled Test Reporting and Observability Excellence
Insights Unveiled Test Reporting and Observability ExcellenceInsights Unveiled Test Reporting and Observability Excellence
Insights Unveiled Test Reporting and Observability Excellence
Knoldus Inc.
 
Introduction to Splunk Presentation (DevOps)
Introduction to Splunk Presentation (DevOps)Introduction to Splunk Presentation (DevOps)
Introduction to Splunk Presentation (DevOps)
Knoldus Inc.
 
Code Camp - Data Profiling and Quality Analysis Framework
Code Camp - Data Profiling and Quality Analysis FrameworkCode Camp - Data Profiling and Quality Analysis Framework
Code Camp - Data Profiling and Quality Analysis Framework
Knoldus Inc.
 
AWS: Messaging Services in AWS Presentation
AWS: Messaging Services in AWS PresentationAWS: Messaging Services in AWS Presentation
AWS: Messaging Services in AWS Presentation
Knoldus Inc.
 
Amazon Cognito: A Primer on Authentication and Authorization
Amazon Cognito: A Primer on Authentication and AuthorizationAmazon Cognito: A Primer on Authentication and Authorization
Amazon Cognito: A Primer on Authentication and Authorization
Knoldus Inc.
 
ZIO Http A Functional Approach to Scalable and Type-Safe Web Development
ZIO Http A Functional Approach to Scalable and Type-Safe Web DevelopmentZIO Http A Functional Approach to Scalable and Type-Safe Web Development
ZIO Http A Functional Approach to Scalable and Type-Safe Web Development
Knoldus Inc.
 
Managing State & HTTP Requests In Ionic.
Managing State & HTTP Requests In Ionic.Managing State & HTTP Requests In Ionic.
Managing State & HTTP Requests In Ionic.
Knoldus Inc.
 
Ad

Recently uploaded (20)

Q1 2025 Dropbox Earnings and Investor Presentation
Q1 2025 Dropbox Earnings and Investor PresentationQ1 2025 Dropbox Earnings and Investor Presentation
Q1 2025 Dropbox Earnings and Investor Presentation
Dropbox
 
Slack like a pro: strategies for 10x engineering teams
Slack like a pro: strategies for 10x engineering teamsSlack like a pro: strategies for 10x engineering teams
Slack like a pro: strategies for 10x engineering teams
Nacho Cougil
 
Limecraft Webinar - 2025.3 release, featuring Content Delivery, Graphic Conte...
Limecraft Webinar - 2025.3 release, featuring Content Delivery, Graphic Conte...Limecraft Webinar - 2025.3 release, featuring Content Delivery, Graphic Conte...
Limecraft Webinar - 2025.3 release, featuring Content Delivery, Graphic Conte...
Maarten Verwaest
 
Integrating FME with Python: Tips, Demos, and Best Practices for Powerful Aut...
Integrating FME with Python: Tips, Demos, and Best Practices for Powerful Aut...Integrating FME with Python: Tips, Demos, and Best Practices for Powerful Aut...
Integrating FME with Python: Tips, Demos, and Best Practices for Powerful Aut...
Safe Software
 
Unlocking Generative AI in your Web Apps
Unlocking Generative AI in your Web AppsUnlocking Generative AI in your Web Apps
Unlocking Generative AI in your Web Apps
Maximiliano Firtman
 
Bepents tech services - a premier cybersecurity consulting firm
Bepents tech services - a premier cybersecurity consulting firmBepents tech services - a premier cybersecurity consulting firm
Bepents tech services - a premier cybersecurity consulting firm
Benard76
 
GDG Cloud Southlake #42: Suresh Mathew: Autonomous Resource Optimization: How...
GDG Cloud Southlake #42: Suresh Mathew: Autonomous Resource Optimization: How...GDG Cloud Southlake #42: Suresh Mathew: Autonomous Resource Optimization: How...
GDG Cloud Southlake #42: Suresh Mathew: Autonomous Resource Optimization: How...
James Anderson
 
Could Virtual Threads cast away the usage of Kotlin Coroutines - DevoxxUK2025
Could Virtual Threads cast away the usage of Kotlin Coroutines - DevoxxUK2025Could Virtual Threads cast away the usage of Kotlin Coroutines - DevoxxUK2025
Could Virtual Threads cast away the usage of Kotlin Coroutines - DevoxxUK2025
João Esperancinha
 
The No-Code Way to Build a Marketing Team with One AI Agent (Download the n8n...
The No-Code Way to Build a Marketing Team with One AI Agent (Download the n8n...The No-Code Way to Build a Marketing Team with One AI Agent (Download the n8n...
The No-Code Way to Build a Marketing Team with One AI Agent (Download the n8n...
SOFTTECHHUB
 
How to Install & Activate ListGrabber - eGrabber
How to Install & Activate ListGrabber - eGrabberHow to Install & Activate ListGrabber - eGrabber
How to Install & Activate ListGrabber - eGrabber
eGrabber
 
Cybersecurity Threat Vectors and Mitigation
Cybersecurity Threat Vectors and MitigationCybersecurity Threat Vectors and Mitigation
Cybersecurity Threat Vectors and Mitigation
VICTOR MAESTRE RAMIREZ
 
AI Agents at Work: UiPath, Maestro & the Future of Documents
AI Agents at Work: UiPath, Maestro & the Future of DocumentsAI Agents at Work: UiPath, Maestro & the Future of Documents
AI Agents at Work: UiPath, Maestro & the Future of Documents
UiPathCommunity
 
Optima Cyber - Maritime Cyber Security - MSSP Services - Manolis Sfakianakis ...
Optima Cyber - Maritime Cyber Security - MSSP Services - Manolis Sfakianakis ...Optima Cyber - Maritime Cyber Security - MSSP Services - Manolis Sfakianakis ...
Optima Cyber - Maritime Cyber Security - MSSP Services - Manolis Sfakianakis ...
Mike Mingos
 
AI 3-in-1: Agents, RAG, and Local Models - Brent Laster
AI 3-in-1: Agents, RAG, and Local Models - Brent LasterAI 3-in-1: Agents, RAG, and Local Models - Brent Laster
AI 3-in-1: Agents, RAG, and Local Models - Brent Laster
All Things Open
 
An Overview of Salesforce Health Cloud & How is it Transforming Patient Care
An Overview of Salesforce Health Cloud & How is it Transforming Patient CareAn Overview of Salesforce Health Cloud & How is it Transforming Patient Care
An Overview of Salesforce Health Cloud & How is it Transforming Patient Care
Cyntexa
 
DevOpsDays SLC - Platform Engineers are Product Managers.pptx
DevOpsDays SLC - Platform Engineers are Product Managers.pptxDevOpsDays SLC - Platform Engineers are Product Managers.pptx
DevOpsDays SLC - Platform Engineers are Product Managers.pptx
Justin Reock
 
fennec fox optimization algorithm for optimal solution
fennec fox optimization algorithm for optimal solutionfennec fox optimization algorithm for optimal solution
fennec fox optimization algorithm for optimal solution
shallal2
 
Enterprise Integration Is Dead! Long Live AI-Driven Integration with Apache C...
Enterprise Integration Is Dead! Long Live AI-Driven Integration with Apache C...Enterprise Integration Is Dead! Long Live AI-Driven Integration with Apache C...
Enterprise Integration Is Dead! Long Live AI-Driven Integration with Apache C...
Markus Eisele
 
On-Device or Remote? On the Energy Efficiency of Fetching LLM-Generated Conte...
On-Device or Remote? On the Energy Efficiency of Fetching LLM-Generated Conte...On-Device or Remote? On the Energy Efficiency of Fetching LLM-Generated Conte...
On-Device or Remote? On the Energy Efficiency of Fetching LLM-Generated Conte...
Ivano Malavolta
 
Challenges in Migrating Imperative Deep Learning Programs to Graph Execution:...
Challenges in Migrating Imperative Deep Learning Programs to Graph Execution:...Challenges in Migrating Imperative Deep Learning Programs to Graph Execution:...
Challenges in Migrating Imperative Deep Learning Programs to Graph Execution:...
Raffi Khatchadourian
 
Q1 2025 Dropbox Earnings and Investor Presentation
Q1 2025 Dropbox Earnings and Investor PresentationQ1 2025 Dropbox Earnings and Investor Presentation
Q1 2025 Dropbox Earnings and Investor Presentation
Dropbox
 
Slack like a pro: strategies for 10x engineering teams
Slack like a pro: strategies for 10x engineering teamsSlack like a pro: strategies for 10x engineering teams
Slack like a pro: strategies for 10x engineering teams
Nacho Cougil
 
Limecraft Webinar - 2025.3 release, featuring Content Delivery, Graphic Conte...
Limecraft Webinar - 2025.3 release, featuring Content Delivery, Graphic Conte...Limecraft Webinar - 2025.3 release, featuring Content Delivery, Graphic Conte...
Limecraft Webinar - 2025.3 release, featuring Content Delivery, Graphic Conte...
Maarten Verwaest
 
Integrating FME with Python: Tips, Demos, and Best Practices for Powerful Aut...
Integrating FME with Python: Tips, Demos, and Best Practices for Powerful Aut...Integrating FME with Python: Tips, Demos, and Best Practices for Powerful Aut...
Integrating FME with Python: Tips, Demos, and Best Practices for Powerful Aut...
Safe Software
 
Unlocking Generative AI in your Web Apps
Unlocking Generative AI in your Web AppsUnlocking Generative AI in your Web Apps
Unlocking Generative AI in your Web Apps
Maximiliano Firtman
 
Bepents tech services - a premier cybersecurity consulting firm
Bepents tech services - a premier cybersecurity consulting firmBepents tech services - a premier cybersecurity consulting firm
Bepents tech services - a premier cybersecurity consulting firm
Benard76
 
GDG Cloud Southlake #42: Suresh Mathew: Autonomous Resource Optimization: How...
GDG Cloud Southlake #42: Suresh Mathew: Autonomous Resource Optimization: How...GDG Cloud Southlake #42: Suresh Mathew: Autonomous Resource Optimization: How...
GDG Cloud Southlake #42: Suresh Mathew: Autonomous Resource Optimization: How...
James Anderson
 
Could Virtual Threads cast away the usage of Kotlin Coroutines - DevoxxUK2025
Could Virtual Threads cast away the usage of Kotlin Coroutines - DevoxxUK2025Could Virtual Threads cast away the usage of Kotlin Coroutines - DevoxxUK2025
Could Virtual Threads cast away the usage of Kotlin Coroutines - DevoxxUK2025
João Esperancinha
 
The No-Code Way to Build a Marketing Team with One AI Agent (Download the n8n...
The No-Code Way to Build a Marketing Team with One AI Agent (Download the n8n...The No-Code Way to Build a Marketing Team with One AI Agent (Download the n8n...
The No-Code Way to Build a Marketing Team with One AI Agent (Download the n8n...
SOFTTECHHUB
 
How to Install & Activate ListGrabber - eGrabber
How to Install & Activate ListGrabber - eGrabberHow to Install & Activate ListGrabber - eGrabber
How to Install & Activate ListGrabber - eGrabber
eGrabber
 
Cybersecurity Threat Vectors and Mitigation
Cybersecurity Threat Vectors and MitigationCybersecurity Threat Vectors and Mitigation
Cybersecurity Threat Vectors and Mitigation
VICTOR MAESTRE RAMIREZ
 
AI Agents at Work: UiPath, Maestro & the Future of Documents
AI Agents at Work: UiPath, Maestro & the Future of DocumentsAI Agents at Work: UiPath, Maestro & the Future of Documents
AI Agents at Work: UiPath, Maestro & the Future of Documents
UiPathCommunity
 
Optima Cyber - Maritime Cyber Security - MSSP Services - Manolis Sfakianakis ...
Optima Cyber - Maritime Cyber Security - MSSP Services - Manolis Sfakianakis ...Optima Cyber - Maritime Cyber Security - MSSP Services - Manolis Sfakianakis ...
Optima Cyber - Maritime Cyber Security - MSSP Services - Manolis Sfakianakis ...
Mike Mingos
 
AI 3-in-1: Agents, RAG, and Local Models - Brent Laster
AI 3-in-1: Agents, RAG, and Local Models - Brent LasterAI 3-in-1: Agents, RAG, and Local Models - Brent Laster
AI 3-in-1: Agents, RAG, and Local Models - Brent Laster
All Things Open
 
An Overview of Salesforce Health Cloud & How is it Transforming Patient Care
An Overview of Salesforce Health Cloud & How is it Transforming Patient CareAn Overview of Salesforce Health Cloud & How is it Transforming Patient Care
An Overview of Salesforce Health Cloud & How is it Transforming Patient Care
Cyntexa
 
DevOpsDays SLC - Platform Engineers are Product Managers.pptx
DevOpsDays SLC - Platform Engineers are Product Managers.pptxDevOpsDays SLC - Platform Engineers are Product Managers.pptx
DevOpsDays SLC - Platform Engineers are Product Managers.pptx
Justin Reock
 
fennec fox optimization algorithm for optimal solution
fennec fox optimization algorithm for optimal solutionfennec fox optimization algorithm for optimal solution
fennec fox optimization algorithm for optimal solution
shallal2
 
Enterprise Integration Is Dead! Long Live AI-Driven Integration with Apache C...
Enterprise Integration Is Dead! Long Live AI-Driven Integration with Apache C...Enterprise Integration Is Dead! Long Live AI-Driven Integration with Apache C...
Enterprise Integration Is Dead! Long Live AI-Driven Integration with Apache C...
Markus Eisele
 
On-Device or Remote? On the Energy Efficiency of Fetching LLM-Generated Conte...
On-Device or Remote? On the Energy Efficiency of Fetching LLM-Generated Conte...On-Device or Remote? On the Energy Efficiency of Fetching LLM-Generated Conte...
On-Device or Remote? On the Energy Efficiency of Fetching LLM-Generated Conte...
Ivano Malavolta
 
Challenges in Migrating Imperative Deep Learning Programs to Graph Execution:...
Challenges in Migrating Imperative Deep Learning Programs to Graph Execution:...Challenges in Migrating Imperative Deep Learning Programs to Graph Execution:...
Challenges in Migrating Imperative Deep Learning Programs to Graph Execution:...
Raffi Khatchadourian
 

Browser-Based Load Testing with Grafana K6

  • 1. Browser-Based Load Testing with Grafana K6 Himanshu Gupta (Software Consultant) Test Automation Competency
  • 2. 1. Introduction to Load Testing • What is Load Testing? • Why Load Testing is important? • Real World Example of Performance Failure 2. Overview of Browser-Based Load Testing • Browser-Based Load Testing & its Key Features  Why Browser-Based Load Testing?  Browser Based Testing over API Testing  Pros & Cons of Browser Based Testing 3. Selection of Tool for Browser-Based Load Testing 4. Introduction to K6 • Leveraging K6 Browser Module • Use Case of Browser Testing • Writing a Basic Browser Level K6 Script • Running Browser Level K6 Script • Understanding Browser Metrices Output 5. Reporting Mechanism 6. Leveraging POM in K6 • What is Page Object Model?  Implementation of Page Object Model in K6 7. Tips for Writing Browser level Scripts 8. Common Pitfalls to avoid in Browser-Based Load Testing 9. Best Practices for Browser-Based Load Testing 10. Demo/QnA
  • 3. WHAT is Load Testing The goal is to assess how well the application can handle a specific amount of concurrent users or transactions while maintaining acceptable performance levels. WHY Load Testing Load testing is particularly important for several reasons: • Resource Planning • Performance Optimization • User Experience Optimization • Identifying Performance Bottlenecks • Reliability and Stability
  • 4. Real World Examples of Performance Failure
  • 5. Let's Discuss Browser-Based Load Testing Browser-based load testing verifies the frontend performance of an application by simulating real users using a browser to access your website. Unlike traditional load testing tools that operate at the protocol level, browser- based load testing tools interact with web applications just like real users do, using web browsers. For example, a browser-based load testing script might include instructions to navigate to a page, click on a button and type out text on a form. Those user actions then trigger underlying requests on the protocol layer, but only user actions are scripted in browser-based testing. Key features of browser-based load testing include: o Realistic User Scenarios o JavaScript Execution o Browser Diversity o Load Distribution
  • 6. Why Browser Based Load Testing
  • 7. Browser Based Testing over API Testing 1. Scope a. Targets the underlying application servers. b. Focuses on how assets are processed, served, and downloaded. 2. Testing Environment: a. Conducted on application servers in a production-like setup.. 3. Flexibility: a. API testing allows targeting specific components. 4. Early Issue Identification: a. Chances of finding performance issues in early stages. 5. Resource Intensity: a. Less resource-intensive compared to frontend testing. 6. Suitability for Load Testing: a. More suitable for generating high loads on the server.. API Based Testing 1. Scope: a. Measures end-user experience at the interface level. b. Concerned with how and when page elements appear. 2. Testing Environment: a. Requires a fully integrated environment with UI. 3. Flexibility: a. Primarily focused on the user interface level. 4. Early Issue Identification: a. Excels at identifying issues on a micro-level. 5. Resource Intensity: a. More resource-intensive, especially for automation. 6. Suitability for Load Testing: a. Tends to be easier to run on a small scale due to resource constraints. Browser Based Testing
  • 8. Pros & Cons of Browser-Based Load Testing Higher Memory Usage Occasionally Longer Runtime Limited Browser Environment Capabilities Simple Scripts User Perspective Low Maintenance Front-end Optimization Reduced Test Complexities
  • 9. Tool Selection For Browser Based Load Testing S E I U R C Scripting Language Choose a tool that supports a scripting language your team is comfortable with or one that aligns with your project requirements. Cost Consider the licensing costs or any associated costs with the tool, especially if you are working within budget constraints. Integration Check for integration capabilities with other tools and your existing CI/CD pipelines. Ease of Use Consider the learning curve and ease of use for your team, especially if they are not experienced with a particular tool. User Simulation Evaluate how accurately the tool can simulate real user interactions. This is crucial for realistic load testing. Reporting & Analysis Look for tools that provide detailed and meaningful reports, as well as options for result analysis.
  • 10. Introduction to K6 • Grafana K6 is an open-source load testing tool that makes performance testing easy and production for developer and DevOps teams. • K6 benefits from a vibrant community, providing support, sharing scripts, and contributing to continuous improvement. • K6 is compatible with various systems and environments, making it suitable for a wide range of applications and use cases. • K6 empowers teams to identify and address performance issues early in the development lifecycle, ensuring robust and scalable applications.
  • 11. Leveraging K6 Browser Module • The browser module brings browser automation and end-to-end web testing to k6 while supporting core k6 features. It enables you to get insights from your front-end application during performance testing. • You can now mix browser-level and protocol-level tests in a single and unified script using k6. This can simulate the bulk of your traffic from your protocol-level tests and run one or two virtual users on a browser level to mimic how a user interacts with your website, thus leveraging a Hybrid approach to Performance Testing. • The browser module offers a unique solution as you don’t have to use separate tools to test your frontend and backend systems. It also offers a simplified experience and aggregated view of performance metrics.
  • 12. Use case for Browser Testing • The main use case for the browser module is to test performance on the browser level. Browser-level testing provides a way to measure user experience and find issues that are difficult to catch on the protocol level. Browser-level testing can help you answer questions like: • When my application is receiving thousands of simultaneous requests from the protocol-level, what happens to the frontend? • How can I get metrics specific to browsers, like total page load time? • Are all my elements interactive on the frontend? • Are there any loading spinners that take a long time to disappear?
  • 13. Writing a Basic Browser level K6 Script
  • 14. Running Browser level K6 Script Execute this command to run tests: K6_BROWSER_HEADLESS=false k6 run script.js
  • 15. Understanding the Browser Metrics Output When a browser test finishes, k6 reports a top-level overview of the aggregated browser metrics output. HTTP requests that were triggered by the browser test are also reported. Below is the example of browser Metrics:
  • 16. Reporting Mechanism • The summary report provides a high-level overview of the key performance indicators from your test. It's useful for quickly understanding the overall health of your system during the test. • Information Included: − Total number of virtual users (VUs). − Duration of the test. − Response time percentiles (e.g., 50th, 95th, 99th percentiles). − Request and response statistics. − Error rate. − Virtual user distribution. Summary Report • The HTML report is more detailed and provides a visual representation of the test results. It includes various graphs and charts that can help in-depth analysis. • Information Included: − Response time trends over time. − Requests per second (RPS) trends. − Latency distributions. − Error rates. − Virtual user activity over time. − Custom metrics and their trends. HTML Report
  • 17. Leveraging Page Object Model (POM) in K6  Page Object Model, also known as POM, is a design pattern that creates an object repository for storing all web elements.  It helps reduce code duplication and improves test case maintenance. In Page Object Model, consider each web page of an application as a class file.  The main idea behind the Page Object Model is to abstract the details of the user interface (UI) components and their interactions with the underlying code, making the automation code more modular and readable.
  • 18. Implementation of Page Object Model in K6
  • 19. 02 01 Tips For Writing Browser Level Scripts 03 Script User Actions, not Requests 04 Lorem Ipsum is simply dummy text of the printing. Identify Unique Selectors Lorem Ipsum is simply dummy text of the printing. Use Elements to Verify Responses Lorem Ipsum is simply dummy text of the printing. Take Screenshots for every action while debugging
  • 20. Best Practices for Browser Based Load Testing 01 02 03 05 04 Identify business goals Lorem ipsum 3 Always keep end-users in mind Ramp-Up Gradually Script Realistic User Scenarios Continuous Monitoring Lorem ipsum 6 Choose a suitable tool 06
  • 21. Common Pitfalls to Avoid in Browser-Based Load Testing • Ignoring Realism • Neglect Data Variability • Inadequate Monitoring • Overlooking Isolation • Poor Documentation • Incomplete Reporting • Limited Test duration • Ignoring User Experience • Static Parameterization
  翻译: