performance testing for mobile apps & sites using apache jmeter

Post on 23-Aug-2014

822 Views

Category:

Mobile

4 Downloads

Preview:

Click to see full reader

DESCRIPTION

Mobile testing has many moving parts - Different devices - Different mobile networks - Less tolerance for bad user experience Therefore any platform that is being used for testing, must support all these by providing easy ways to record mobile scenarios and to be able to realistically emulate mobile traffic at scale.

TRANSCRIPT

@alongir Palo Alto, CA|NYC, NY|1.855.445.2285|info@blazemeter.com

Performance Testing for Mobile Apps & Sites

(using open source tools)

@alongir Palo Alto, CA|NYC, NY|1.855.445.2285|info@blazemeter.com

Alon Girmonsky About Me

•  Hands-On Developer for the Past 20 Years •  Expertise

– Large-Scale Web and Mobile Applications –  IP & Internet

•  Founder & CEO of BlazeMeter – A Load Testing Platform as a Service – 100% Compatible with Apache JMeter

USERS

50,000

TESTS

500,000

@alongir Palo Alto, CA|NYC, NY|1.855.445.2285|info@blazemeter.com

Mobile Vs Web

Mobile: The New Challenge

•  Mobile – Devices – Networks – Scale – Recording

•  HTTPS / Apps

– Visual Feedback •  The rest is about the same ..

@alongir Palo Alto, CA|NYC, NY|1.855.445.2285|info@blazemeter.com

Mobile Vs Web

Mobile: The New Challenge

Desktop Mobile

Client “Standard” Browser Multitude of clients

Technology HTML HTML / Native

Bandwidth Fast (1-20 Mb/s) Slow (0.1 Mb/s and up)

Latency Small (less than 100ms) Large (100-1000ms)

Visual Feedback Immediate After data has loaded*

@alongir Palo Alto, CA|NYC, NY|1.855.445.2285|info@blazemeter.com

Comprehensive scripting at your fingertips

Any Script, Any Scenario

•  HTTP / HTTPS •  Login / Signup •  Form POSTing / Credit card transactions •  Web services •  Parameters extraction •  Mobile •  Mongo, MSSQL, Oracle SQL, MySQL •  Multiple user profiles

» Any script » Any scenario » Any protocol

@alongir Palo Alto, CA|NYC, NY|1.855.445.2285|info@blazemeter.com

The Load Sensitivity Point What to look for?

Palo Alto, CA|NYC, NY|1.855.445.2285|info@blazemeter.com

Performance 1-on-1

@alongir Palo Alto, CA|NYC, NY|1.855.445.2285|info@blazemeter.com

Load Performance Types

Perfect Time

Sensitive

Bad

@alongir Palo Alto, CA|NYC, NY|1.855.445.2285|info@blazemeter.com

Load Performance Types

Perfect

The Perfect Load

Time

@alongir Palo Alto, CA|NYC, NY|1.855.445.2285|info@blazemeter.com

Load Performance Types

Sensitive

Sensitive to Load

Time

@alongir Palo Alto, CA|NYC, NY|1.855.445.2285|info@blazemeter.com

Load Performance Types

Bad

Bad Performance

Time

@alongir Palo Alto, CA|NYC, NY|1.855.445.2285|info@blazemeter.com

Load Performance Types

Perfect

Here They Are Again

Time

Sensitive

Bad

@alongir Palo Alto, CA|NYC, NY|1.855.445.2285|info@blazemeter.com

Load Testing Steps

Performance Testing Walkthrough

• Record the Mobile User Scenario • Configure Test Parameters • Run Load Test • Analyze The Results

@alongir Palo Alto, CA|NYC, NY|1.855.445.2285|info@blazemeter.com

Load Testing Steps

Performance Testing Walkthrough

• Record the Mobile User Scenario • Configure Test Parameters • Run Load Test • Analyze The Results

@alongir Palo Alto, CA|NYC, NY|1.855.445.2285|info@blazemeter.com

Using Apache JMeter Proxy

Record the Mobile User Scenario

@alongir Palo Alto, CA|NYC, NY|1.855.445.2285|info@blazemeter.com

Using Apache JMeter Proxy

Record the Mobile User Scenario

Get Your Local IP

@alongir Palo Alto, CA|NYC, NY|1.855.445.2285|info@blazemeter.com

Using Apache JMeter Proxy

Record the Mobile User Scenario

Point Device to Proxy

@alongir Palo Alto, CA|NYC, NY|1.855.445.2285|info@blazemeter.com

Using Apache JMeter Proxy

Record the Mobile User Scenario

Real usage of a mobile app (CNN iPhone app)

@alongir Palo Alto, CA|NYC, NY|1.855.445.2285|info@blazemeter.com

Verify The Recorded Data in JMeter

Record the Mobile User Scenario

All of the requests made by the app.

Request Headers

@alongir Palo Alto, CA|NYC, NY|1.855.445.2285|info@blazemeter.com

Verify The Recorded Data in JMeter

Record the Mobile User Scenario

Different���User Agent

@alongir Palo Alto, CA|NYC, NY|1.855.445.2285|info@blazemeter.com

Emulate Any Device from your Browser

Recording: Mobile Web

@alongir Palo Alto, CA|NYC, NY|1.855.445.2285|info@blazemeter.com

Emulate Any Device from your Browser

Recording: Easier

@alongir Palo Alto, CA|NYC, NY|1.855.445.2285|info@blazemeter.com

Load Testing Steps

Performance Testing Walkthrough

• Record the Mobile User Scenario • Configure Test Parameters • Run Load Test • Analyze The Results

@alongir Palo Alto, CA|NYC, NY|1.855.445.2285|info@blazemeter.com

Configure Test Parameters

•  Number of Users •  Number of Servers •  Test Duration •  Ramp Up Time •  Load Server Geo Location(s)

@alongir Palo Alto, CA|NYC, NY|1.855.445.2285|info@blazemeter.com

Define Network Emulation Parameters

Mobile Network Emulation

@alongir Palo Alto, CA|NYC, NY|1.855.445.2285|info@blazemeter.com

Load Testing Steps

Performance Testing Walkthrough

• Record the Mobile User Scenario • Configure Test Parameters • Run Load Test • Analyze The Results

@alongir Palo Alto, CA|NYC, NY|1.855.445.2285|info@blazemeter.com

Load Testing Steps

Performance Testing Walkthrough

• Record the Mobile User Scenario • Configure Test Parameters • Run Load Test • Analyze The Results

@alongir Palo Alto, CA|NYC, NY|1.855.445.2285|info@blazemeter.com

Thank you for your time!

Jolt Awards 2013: The Best Testing Tools

Thank you for attending. We’ll send out an email with the recording and the deck.

Q & A For more information about Performance Testing and JMeter: http://BlazeMeter.com/blog/ support@blazemeter.com @BlazeMeter

top related