SlideShare a Scribd company logo
Dipanjan Haldar
22-04-2016
 In the current digital world mobile app usage has overtaken
desktop traffic - and this trend just looks set to rise. But what
does this mean for us?
 For performance engineers, it means that now, more than ever,
we need to focus on mobile users when running performance
tests. If our mobile app doesn’t perform well - our business will
be at stake.
 In most of the cases, mobile device users access the
internet via the cellular network. The network coverage
will vary depending on the location. Hence it is very
critical to ensure that the system can fully handle mobile
and tablets - even when they have different internet
connection speeds.
 By default, Jmeter will send the requests to the target
server as fast as it can. This is great for generating the
load on the server - but not very realistic as real users
don’t hit the server non-stop, they will have some time to
think between operations. On top of that, mobile users
are limited by network bandwidth, which can slow them
down considerably.
 Option to throttle outgoing bandwidth in order to simulate different network speeds
 Bandwidth can be controlled through these two properties:
◦ httpclient.socket.http.cps=0
◦ httpclient.socket.https.cps=0
 “cps” stands for “characters per second”
 The properties default to zero, which means no limitations
 The formula for calculating “cps”
 For example: to emulate the GPRS cellular network speed (which is 171 Kbits/second
downstream), the relevant CPS value would be: 21888 (171 * 1024/8)
cps = (target bandwidth in kbps * 1024) / 8
1. Add these two lines to the user.properties file (you’ll
find this in the bin folder of your JMeter installation)
◦ httpclient.socket.http.cps=21888 httpclient.socket.https.cps=21888
◦ You’ll need to restart Jmeter to pick these properties up
2. Alternatively, you can pass the properties’ values via
the -J command line argument, like this:
◦ jmeter -Jhttpclient.socket.http.cps=21888 -
Jhttpclient.socket.https.cps=21888 -t /path/to/your/testplan.jmx

More Related Content

PPTX
ATAGTR2017 Batch Workload Modelling and Performance Optimization
PPTX
ATAGTR2017 The way to recover the issue faced in IoT regression Testing
PPTX
WiKi Based Automation Testing: Fitness & DevOps
PPTX
Big Data - Hadoop and MapReduce - Aditya Garg
PPTX
ATAGTR2017 CDC Tests - Integration Tests cant be made simpler than this!
PPTX
ATAGTR2017 Differentiation using Testing Tools and Automation in the BFS COTS...
PPTX
ATAGTR2017 Protractor Cucumber BDD Approach
PPTX
ATAGTR2017 HikeRunner: Load Test Framework
ATAGTR2017 Batch Workload Modelling and Performance Optimization
ATAGTR2017 The way to recover the issue faced in IoT regression Testing
WiKi Based Automation Testing: Fitness & DevOps
Big Data - Hadoop and MapReduce - Aditya Garg
ATAGTR2017 CDC Tests - Integration Tests cant be made simpler than this!
ATAGTR2017 Differentiation using Testing Tools and Automation in the BFS COTS...
ATAGTR2017 Protractor Cucumber BDD Approach
ATAGTR2017 HikeRunner: Load Test Framework

What's hot (18)

PDF
SFScon 21 - Eduardo Guerra - A Lean Software Analytics Canvas for Agile Small...
PDF
Fundamentals Performance Testing
PDF
Performance test on Carrefour
PDF
Jmeter Walkthrough
PPTX
ATAGTR2017 Performance Automation in Dev-Ops
PDF
Code review automation and functional tests on Carrefour
PPTX
Ginsbourg.com presentation of apache jmeter 4
PPTX
New relic
PPTX
ATAGTR2017 Analytics Testing
PPTX
How Trilio Uses StormForge to Deliver Better Kubernetes Performance at 64% Lo...
PPTX
ATAGTR2017 Cost-effective Security Testing Approaches for Web, Mobile & Enter...
PDF
Performance tuning Grails applications
PPTX
Your Testing Is Flawed: Introducing A New Open Source Tool For Accurate Kuber...
PPTX
ATAGTR2017 Blockchain Based Testing
PPTX
Ginsbourg.com - Presentation of Performance & Load Testing Validation 2019
PDF
Cut your Grails application to pieces - build feature plugins
PPTX
Dynatrace
PPTX
Using Automation to Meet Demands for Performance and Quality
SFScon 21 - Eduardo Guerra - A Lean Software Analytics Canvas for Agile Small...
Fundamentals Performance Testing
Performance test on Carrefour
Jmeter Walkthrough
ATAGTR2017 Performance Automation in Dev-Ops
Code review automation and functional tests on Carrefour
Ginsbourg.com presentation of apache jmeter 4
New relic
ATAGTR2017 Analytics Testing
How Trilio Uses StormForge to Deliver Better Kubernetes Performance at 64% Lo...
ATAGTR2017 Cost-effective Security Testing Approaches for Web, Mobile & Enter...
Performance tuning Grails applications
Your Testing Is Flawed: Introducing A New Open Source Tool For Accurate Kuber...
ATAGTR2017 Blockchain Based Testing
Ginsbourg.com - Presentation of Performance & Load Testing Validation 2019
Cut your Grails application to pieces - build feature plugins
Dynatrace
Using Automation to Meet Demands for Performance and Quality
Ad

Viewers also liked (20)

PPTX
Test Engagement - Vishal Prasad
PDF
Testing AS A Container - Irfan Ahmad
PPTX
Dr. shankar-dev ops-davinci_code_GTR
PPTX
#ATAGTR2016 Twitter Action
PPTX
Introduction - #ATAGTR2016
PPTX
Fidelity Test Data Management
PPT
BDD along with Continuous Integration
PPTX
Continuous Performance Testing with Taurus and Jmeter
PPTX
Test Automation in Agile
PDF
Using Docker for Testing - Mukta
PPTX
Yahya Devqaops updated
PDF
Automation Testing Approach for Responsive Web Design
PDF
Patterns of a "Good" Test Automation Framework, Locators & Data
PPTX
Augmented Reality & Software Testing - Sourabh d
PDF
IoT: Testing - Shardul Rao
PPTX
Service Virtualization - Kalpna
PPTX
Mind Wave In Testing
PDF
Demystifying Devops - Uday kumar
PPTX
50+ ways to improve tester - programmer relationship
PPTX
Modelling QA Transformation with Prime
Test Engagement - Vishal Prasad
Testing AS A Container - Irfan Ahmad
Dr. shankar-dev ops-davinci_code_GTR
#ATAGTR2016 Twitter Action
Introduction - #ATAGTR2016
Fidelity Test Data Management
BDD along with Continuous Integration
Continuous Performance Testing with Taurus and Jmeter
Test Automation in Agile
Using Docker for Testing - Mukta
Yahya Devqaops updated
Automation Testing Approach for Responsive Web Design
Patterns of a "Good" Test Automation Framework, Locators & Data
Augmented Reality & Software Testing - Sourabh d
IoT: Testing - Shardul Rao
Service Virtualization - Kalpna
Mind Wave In Testing
Demystifying Devops - Uday kumar
50+ ways to improve tester - programmer relationship
Modelling QA Transformation with Prime
Ad

Similar to Simulating Different-Network Speeds using JMETER (20)

PPTX
VSP: A Virtual Smartphone Platform to Enhance the Capability of Physical Smar...
PDF
A Scalable Network Monitoring and Bandwidth Throttling System for Cloud Compu...
PDF
IRJET- Improve Client Performance in Client Server Mobile Computing System us...
PDF
Jq2416671672
PDF
A COMPREHENSIVE SOLUTION TO CLOUD TRAFFIC TRIBULATIONS
PDF
A COMPREHENSIVE SOLUTION TO CLOUD TRAFFIC TRIBULATIONS
PDF
A COMPREHENSIVE SOLUTION TO CLOUD TRAFFIC TRIBULATIONS
PDF
A COMPREHENSIVE SOLUTION TO CLOUD TRAFFIC TRIBULATIONS
PDF
A COMPREHENSIVE SOLUTION TO CLOUD TRAFFIC TRIBULATIONS
PDF
Ki3517881791
PDF
C010221015
PPTX
Nairobi Water
PDF
Socket programming assignment
DOCX
Network assisted mobile computing with optimal uplink query processing
DOCX
The case for application specific qos
PDF
Explained_ Network Throttling to Test Website Performance.pdf
PDF
H017113842
PDF
An in-building multi-server cloud system based on shortest Path algorithm dep...
PDF
Improve the Offloading Decision by Adaptive Partitioning of Task for Mobile C...
VSP: A Virtual Smartphone Platform to Enhance the Capability of Physical Smar...
A Scalable Network Monitoring and Bandwidth Throttling System for Cloud Compu...
IRJET- Improve Client Performance in Client Server Mobile Computing System us...
Jq2416671672
A COMPREHENSIVE SOLUTION TO CLOUD TRAFFIC TRIBULATIONS
A COMPREHENSIVE SOLUTION TO CLOUD TRAFFIC TRIBULATIONS
A COMPREHENSIVE SOLUTION TO CLOUD TRAFFIC TRIBULATIONS
A COMPREHENSIVE SOLUTION TO CLOUD TRAFFIC TRIBULATIONS
A COMPREHENSIVE SOLUTION TO CLOUD TRAFFIC TRIBULATIONS
Ki3517881791
C010221015
Nairobi Water
Socket programming assignment
Network assisted mobile computing with optimal uplink query processing
The case for application specific qos
Explained_ Network Throttling to Test Website Performance.pdf
H017113842
An in-building multi-server cloud system based on shortest Path algorithm dep...
Improve the Offloading Decision by Adaptive Partitioning of Task for Mobile C...

More from Agile Testing Alliance (20)

PPTX
#Interactive Session by Anindita Rath and Mahathee Dandibhotla, "From Good to...
PDF
#Interactive Session by Ajay Balamurugadas, "Where Are The Real Testers In T...
PPTX
#Interactive Session by Jishnu Nambiar and Mayur Ovhal, "Monitoring Web Per...
PDF
#Interactive Session by Pradipta Biswas and Sucheta Saurabh Chitale, "Navigat...
PDF
#Interactive Session by Apoorva Ram, "The Art of Storytelling for Testers" at...
PPTX
#Interactive Session by Nikhil Jain, "Catch All Mail With Graph" at #ATAGTR2023.
PPTX
#Interactive Session by Ashok Kumar S, "Test Data the key to robust test cove...
PPTX
#Interactive Session by Seema Kohli, "Test Leadership in the Era of Artificia...
PDF
#Interactive Session by Ashwini Lalit, RRR of Test Automation Maintenance" at...
PPTX
#Interactive Session by Srithanga Aishvarya T, "Machine Learning Model to aut...
PPTX
#Interactive Session by Kirti Ranjan Satapathy and Nandini K, "Elements of Qu...
PPTX
#Interactive Session by Sudhir Upadhyay and Ashish Kumar, "Strengthening Test...
PPTX
#Interactive Session by Sayan Deb Kundu, "Testing Gen AI Applications" at #AT...
PDF
#Interactive Session by Dinesh Boravke, "Zero Defects – Myth or Reality" at #...
PPTX
#Interactive Session by Saby Saurabh Bhardwaj, "Redefine Quality Assurance –...
PDF
#Keynote Session by Sanjay Kumar, "Innovation Inspired Testing!!" at #ATAGTR2...
PDF
#Keynote Session by Schalk Cronje, "Don’t Containerize me" at #ATAGTR2023.
PPTX
#Interactive Session by Chidambaram Vetrivel and Venkatesh Belde, "Revolution...
PDF
#Interactive Session by Aniket Diwakar Kadukar and Padimiti Vaidik Eswar Dat...
PPTX
#Interactive Session by Vivek Patle and Jahnavi Umarji, "Empowering Functiona...
#Interactive Session by Anindita Rath and Mahathee Dandibhotla, "From Good to...
#Interactive Session by Ajay Balamurugadas, "Where Are The Real Testers In T...
#Interactive Session by Jishnu Nambiar and Mayur Ovhal, "Monitoring Web Per...
#Interactive Session by Pradipta Biswas and Sucheta Saurabh Chitale, "Navigat...
#Interactive Session by Apoorva Ram, "The Art of Storytelling for Testers" at...
#Interactive Session by Nikhil Jain, "Catch All Mail With Graph" at #ATAGTR2023.
#Interactive Session by Ashok Kumar S, "Test Data the key to robust test cove...
#Interactive Session by Seema Kohli, "Test Leadership in the Era of Artificia...
#Interactive Session by Ashwini Lalit, RRR of Test Automation Maintenance" at...
#Interactive Session by Srithanga Aishvarya T, "Machine Learning Model to aut...
#Interactive Session by Kirti Ranjan Satapathy and Nandini K, "Elements of Qu...
#Interactive Session by Sudhir Upadhyay and Ashish Kumar, "Strengthening Test...
#Interactive Session by Sayan Deb Kundu, "Testing Gen AI Applications" at #AT...
#Interactive Session by Dinesh Boravke, "Zero Defects – Myth or Reality" at #...
#Interactive Session by Saby Saurabh Bhardwaj, "Redefine Quality Assurance –...
#Keynote Session by Sanjay Kumar, "Innovation Inspired Testing!!" at #ATAGTR2...
#Keynote Session by Schalk Cronje, "Don’t Containerize me" at #ATAGTR2023.
#Interactive Session by Chidambaram Vetrivel and Venkatesh Belde, "Revolution...
#Interactive Session by Aniket Diwakar Kadukar and Padimiti Vaidik Eswar Dat...
#Interactive Session by Vivek Patle and Jahnavi Umarji, "Empowering Functiona...

Recently uploaded (20)

PDF
NewMind AI Weekly Chronicles - August'25 Week I
PDF
Bridging biosciences and deep learning for revolutionary discoveries: a compr...
PDF
Advanced methodologies resolving dimensionality complications for autism neur...
PPTX
Cloud computing and distributed systems.
PDF
Per capita expenditure prediction using model stacking based on satellite ima...
PDF
Shreyas Phanse Resume: Experienced Backend Engineer | Java • Spring Boot • Ka...
PDF
Agricultural_Statistics_at_a_Glance_2022_0.pdf
PDF
Encapsulation theory and applications.pdf
PDF
TokAI - TikTok AI Agent : The First AI Application That Analyzes 10,000+ Vira...
PDF
CIFDAQ's Market Insight: SEC Turns Pro Crypto
PPTX
Digital-Transformation-Roadmap-for-Companies.pptx
PPTX
A Presentation on Artificial Intelligence
PDF
Unlocking AI with Model Context Protocol (MCP)
PPTX
Effective Security Operations Center (SOC) A Modern, Strategic, and Threat-In...
PDF
How UI/UX Design Impacts User Retention in Mobile Apps.pdf
PDF
Mobile App Security Testing_ A Comprehensive Guide.pdf
PDF
Build a system with the filesystem maintained by OSTree @ COSCUP 2025
PDF
Blue Purple Modern Animated Computer Science Presentation.pdf.pdf
PPTX
Understanding_Digital_Forensics_Presentation.pptx
PDF
Spectral efficient network and resource selection model in 5G networks
NewMind AI Weekly Chronicles - August'25 Week I
Bridging biosciences and deep learning for revolutionary discoveries: a compr...
Advanced methodologies resolving dimensionality complications for autism neur...
Cloud computing and distributed systems.
Per capita expenditure prediction using model stacking based on satellite ima...
Shreyas Phanse Resume: Experienced Backend Engineer | Java • Spring Boot • Ka...
Agricultural_Statistics_at_a_Glance_2022_0.pdf
Encapsulation theory and applications.pdf
TokAI - TikTok AI Agent : The First AI Application That Analyzes 10,000+ Vira...
CIFDAQ's Market Insight: SEC Turns Pro Crypto
Digital-Transformation-Roadmap-for-Companies.pptx
A Presentation on Artificial Intelligence
Unlocking AI with Model Context Protocol (MCP)
Effective Security Operations Center (SOC) A Modern, Strategic, and Threat-In...
How UI/UX Design Impacts User Retention in Mobile Apps.pdf
Mobile App Security Testing_ A Comprehensive Guide.pdf
Build a system with the filesystem maintained by OSTree @ COSCUP 2025
Blue Purple Modern Animated Computer Science Presentation.pdf.pdf
Understanding_Digital_Forensics_Presentation.pptx
Spectral efficient network and resource selection model in 5G networks

Simulating Different-Network Speeds using JMETER

  • 2.  In the current digital world mobile app usage has overtaken desktop traffic - and this trend just looks set to rise. But what does this mean for us?  For performance engineers, it means that now, more than ever, we need to focus on mobile users when running performance tests. If our mobile app doesn’t perform well - our business will be at stake.
  • 3.  In most of the cases, mobile device users access the internet via the cellular network. The network coverage will vary depending on the location. Hence it is very critical to ensure that the system can fully handle mobile and tablets - even when they have different internet connection speeds.  By default, Jmeter will send the requests to the target server as fast as it can. This is great for generating the load on the server - but not very realistic as real users don’t hit the server non-stop, they will have some time to think between operations. On top of that, mobile users are limited by network bandwidth, which can slow them down considerably.
  • 4.  Option to throttle outgoing bandwidth in order to simulate different network speeds  Bandwidth can be controlled through these two properties: ◦ httpclient.socket.http.cps=0 ◦ httpclient.socket.https.cps=0  “cps” stands for “characters per second”  The properties default to zero, which means no limitations  The formula for calculating “cps”  For example: to emulate the GPRS cellular network speed (which is 171 Kbits/second downstream), the relevant CPS value would be: 21888 (171 * 1024/8) cps = (target bandwidth in kbps * 1024) / 8
  • 5. 1. Add these two lines to the user.properties file (you’ll find this in the bin folder of your JMeter installation) ◦ httpclient.socket.http.cps=21888 httpclient.socket.https.cps=21888 ◦ You’ll need to restart Jmeter to pick these properties up 2. Alternatively, you can pass the properties’ values via the -J command line argument, like this: ◦ jmeter -Jhttpclient.socket.http.cps=21888 - Jhttpclient.socket.https.cps=21888 -t /path/to/your/testplan.jmx