performance testing presentation

33
PERFORMANCE TESTING Lee Miguel López Performance Testing Engineer [email protected] @milopez_ch

Upload: belatrix-software

Post on 09-Jan-2017

94 views

Category:

Software


2 download

TRANSCRIPT

PERFORMANCE TESTING

Lee Miguel LópezPerformance Testing Engineer

[email protected]@milopez_ch

Walkthrough1. What is2. Why is3. When is recommended4. What can I do5. Inside the project6. What do I need

What is Performance Testing- Non Functional test.- Application + Environment.- Different kind of test.- Vital part of software development life cycle.- Performing well? => Perception.- System perf. = Σ Modules perf.

Why to do Performance Testing

Talking about seconds...

154

Simple Conversational

interaction

Short time Memory

2

Emotionally committed

Remember Information

2sub

Intensive work

ms

Instantaneous

Performance Testing Standards

- What I want && What I need.- But…

Application Performance Management

- There ARE NOT standards.

When is recommended

1. Application with concurrent users. (dah!)2. Response Time > Critical.3. Distributed architecture.4. Shared infrastructure or components.5. New version or releases.6. Before sale campaigns. (e-commerces)

What can I do?Replicate: HTTP, FTP, TCP, JDBC, MongoDB, JMS, WS, LDAP, OS, SSH, … … … ISO 8583

Monitoring environment.

Export and correlate results.

Analysis and diagnosis.

“Tell me which protocol are you made of. And I will test you”

Inside the project

What do I need?1. Make sure your code is ready and code freeze.2. Design Performance Test Environment

Environment: Expectation

Environment: Reality

Performance Test Architecture

What do I need?1. Make sure your code is ready and code freeze.2. Design Performance Test Environment.3. Setting “Realistic” performance targets.4. Define and create scripts to emulate transactions.

Scripting

- Think Time (simple, random, gaussian)- Delays (uniform, synchronized)- Conditional (simple, double, multip.)- Loop (switch, while, throughput )- Assertions (http code, text, time)- Managers (cache, cookies, sessions)- Regex

Scripting

What do I need?1. Make sure your code is ready and code freeze.2. Design Performance Test Environment.3. Setting “Realistic” performance targets.4. Define and create scripts to emulate transactions. 5. Test Data (RIP Performance Testing)6. Running test.

Running Tests

Types of Performance Testing

Load Test

- Am I ok or not?- Simulate expected

conditions.- Important/Critical

transactions.- Overall performance.- SLA defined by owner.

Scalability Test

- How much can I grow?- Same app, same env.- Future expectations.- Max acceptable level.- SLA could be changed.

Soak Test

- Is memory fine?- Load test during long time.- Memory starvation.- Garbage collector. - Could take hours, days or

even weeks.

Stress Test

- Where am I weak?- Unexpected conditions.- Extreme load.- Modified scripts.- Find break points.- Vital for some scenarios.

Other kinds PROFILING

BASELINE

DEBUG

What do I need?1. Make sure your code is ready and code freeze.2. Design Performance Test Environment.3. Setting “Realistic” performance targets.4. Define and create scripts to emulate transactions. 5. Test Data (RIP Performance Testing)6. Run Test and Monitoring. 7. Interpreting results.

Analysis and Monitoring

QUEST SQL

What do I need?1. Make sure your code is ready and code freeze.2. Design Performance Test Environment.3. Setting “Realistic” performance targets.4. Define and create scripts to emulate transactions. 5. Test Data (RIP Performance Testing)6. Run Test and Monitoring.7. Interpreting results. 8. Summary.

Q & A

PERFORMANCE TESTING

Lee Miguel LópezPerformance Testing Engineer

[email protected]@milopez_ch