More Related Content Similar to Continuous Integration - A Performance Engineer's Tale (7) More from Stephen Thair (15) Continuous Integration - A Performance Engineer's Tale1. London Web Meetup ā Dec 2011
Continuous Integration ā A Performance Engineers Tale
CONFIDENTIAL and not for reproduction without prior written consent. Ā© of the Sporting Exchange Limited.
2. āWE WILL DO
CONTINUOUS
INTEGRATION commandment - The
1128 TESTINGā
Management
th
2 CONFIDENTIAL and not for reproduction without prior written consent. Ā© of the Sporting Exchange Limited.
3. INITIAL THOUGHTS
ā¢Automate all of our Performance Tests
ā¢ Add tests to the Build process
CI ļ¾
3 CONFIDENTIAL and not for reproduction without prior written consent. Ā© of the Sporting Exchange Limited.
4. WHY IT WONT WORK
ā¢Performance testing needs a functional
application
ā¢ The length of time needed to gather
significant amount of data points
ā¢ Performance testing requires analysis of
results to find meaningful conclusions
4 CONFIDENTIAL and not for reproduction without prior written consent. Ā© of the Sporting Exchange Limited.
5. MORE INFORMATION
5 CONFIDENTIAL and not for reproduction without prior written consent. Ā© of the Sporting Exchange Limited.
6. GOALS FOR PERFORMANCE
ā¢Measure Performance as part of every build
ā¢ Compare between builds (regression)
ā¢ Alert if performance deviates from normal
ā¢Fail the build if performance does not meet
SLAās
ā¢ Automatic process
6 CONFIDENTIAL and not for reproduction without prior written consent. Ā© of the Sporting Exchange Limited.
7. Delivery
Team
Build
7 CONFIDENTIAL and not for reproduction without prior written consent. Ā© of the Sporting Exchange Limited.
8. Delivery
Team
Ready
for Build
Test?
Deploy
Environment
8 CONFIDENTIAL and not for reproduction without prior written consent. Ā© of the Sporting Exchange Limited.
9. Delivery
Team
Ready
for Build
Test?
Deploy
Environment
Performance
Perf Trends
Measurements
9 CONFIDENTIAL and not for reproduction without prior written consent. Ā© of the Sporting Exchange Limited.
10. Delivery Alert Deviation
from
Team
normal?
Ready Fail Fail to
for Build meet
Test? SLAās?
Deploy
Environment
Performance
Perf Trends
Measurements
10 CONFIDENTIAL and not for reproduction without prior written consent. Ā© of the Sporting Exchange Limited.
11. Delivery Alert Deviation
from
Team
normal?
Ready Fail Fail to
for Build meet
Test? SLAās?
Deploy
Environment
Continuous Performance
Perf Trends
Load Measurements
Injection
Usage
Profile
Production
logs
11 CONFIDENTIAL and not for reproduction without prior written consent. Ā© of the Sporting Exchange Limited.
12. Delivery Alert Deviation
from
Team
normal?
Ready Fail Fail to
for Build meet
Test? SLAās?
Deploy
Measurements
Environment
Continuous End User
Perf Trends
Load Response
Injection
Service/API
Usage response
Profile
Production
logs System
monitors
12 CONFIDENTIAL and not for reproduction without prior written consent. Ā© of the Sporting Exchange Limited.
13. Delivery Alert Deviation
from
Team
normal?
Ready Fail Fail to
for Build meet
Test? SLAās?
Deploy
Measurements
Environment
Continuous End User
Perf Trends
Load Response
Injection
For Each Data
Service/API Point
Usage response
Profile
Production
logs System
Perf Details
monitors
13 CONFIDENTIAL and not for reproduction without prior written consent. Ā© of the Sporting Exchange Limited.
14. āTHE POINT OF TESTING IS TO FLUSH OUT, UNDER
CONTROLLED CONDITIONS, ANY PROBLEM THAT THE
SYSTEM WILL HAVE IN PRODUCTION. A SIGNIFICANT
PART OF THIS IS THE ENVIRONMENT WITHIN WHICH
THE PRODUCTION SYSTEM WILL RUN. IF YOU TEST IN
A DIFFERENT ENVIRONMENT, EVERY DIFFERENCE
RESULTS IN A RISK THAT WHAT HAPPENS UNDER TEST
WONāT HAPPEN IN PRODUCTIONā
MARTIN FOWLER
14 CONFIDENTIAL and not for reproduction without prior written consent. Ā© of the Sporting Exchange Limited.
15. Delivery Alert Deviation
from
Team
normal?
Ready Fail Fail to
for Build meet
Test? SLAās?
Deploy
Production Measurements
Environment
End User
Perf Trends
Response
For Each Data
Service/API Point
response
System
Perf Details
monitors
15 CONFIDENTIAL and not for reproduction without prior written consent. Ā© of the Sporting Exchange Limited.
16. Delivery Alert Deviation
from
Team
normal?
Ready Fail Fail to
for Build meet
Test? SLAās?
Deploy
Measurements
Environment
Continuous End User
Perf Trends
Load Response
Injection
For Each Data
Service/API Point
Usage response
Profile
Production
logs System
Perf Details
monitors
16 CONFIDENTIAL and not for reproduction without prior written consent. Ā© of the Sporting Exchange Limited.
17. Delivery Alert Deviation
from
Team
normal?
Ready Fail Fail to
for Build meet
Test? SLAās?
Deploy
Measurements
Environment
Continuous End User
Perf Trends
Load Response
Injection LoadRunner
For Each Data
Service/API Point
Usage response
Profile
Production
logs System
Perf Details
monitors
17 CONFIDENTIAL and not for reproduction without prior written consent. Ā© of the Sporting Exchange Limited.
18. Delivery Alert Deviation
from
Team
normal?
Ready Fail Fail to
for Build meet
Test? SLAās?
Deploy
Measurements Keynote
Environment
Continuous End User
Perf Trends
Load Response
Injection
For Each Data
Service/API Point
Usage response
Profile
Production
logs System
Perf Details
monitors
18 CONFIDENTIAL and not for reproduction without prior written consent. Ā© of the Sporting Exchange Limited.
19. Delivery Alert Deviation
from
Team
normal?
Ready Fail Fail to
for Build meet
Test? SLAās?
Deploy
Measurements
Dynatrace Ajax Premium
Environment
Continuous End User
Perf Trends
Load Response
Injection
For Each Data
Service/API Point
Usage response
Profile
Production
logs System
Perf Details
monitors
19 CONFIDENTIAL and not for reproduction without prior written consent. Ā© of the Sporting Exchange Limited.
20. ADVANTAGES
ā¢Allows standard performance regression
testing to be fully automated, freeing up time
for more complex performance work
ā¢Separating load injection from performance
measurements enables performance to be
included in build cycle
ā¢Provides immediate feedback to delivery
teams
20 CONFIDENTIAL and not for reproduction without prior written consent. Ā© of the Sporting Exchange Limited.
21. NOT IN SCOPE
ā¢Capacity Testing
ā¢ Soak Testing
ā¢ Failure Testing
ā¢Stress Testing
Still Plenty of Traditional work
to do
21 CONFIDENTIAL and not for reproduction without prior written consent. Ā© of the Sporting Exchange Limited.
22. THINGS I LEARNT
ā¢Keep an open mind to new stuff
22 CONFIDENTIAL and not for reproduction without prior written consent. Ā© of the Sporting Exchange Limited.
23. THINGS I LEARNT
ā¢Keep an open mind to new stuff
ā¢ Give it more than 2 minutes of thought
23 CONFIDENTIAL and not for reproduction without prior written consent. Ā© of the Sporting Exchange Limited.
24. THINGS I LEARNT
ā¢Keep an open mind to new stuff
ā¢ Give it more than 2 minutes of thought
ā¢ Get past the reasons it wonāt work
24 CONFIDENTIAL and not for reproduction without prior written consent. Ā© of the Sporting Exchange Limited.
25. THINGS I LEARNT
ā¢Keep an open mind to new stuff
ā¢ Give it more than 2 minutes of thought
ā¢ Get past the reasons it wonāt work
ā¢Use Google
25 CONFIDENTIAL and not for reproduction without prior written consent. Ā© of the Sporting Exchange Limited.
26. THINGS I LEARNT
ā¢Keep an open mind to new stuff
ā¢ Give it more than 2 minutes of thought
ā¢ Get past the reasons it wonāt work
ā¢Use Google
ā¢ Design for the ideal, compromise later
26 CONFIDENTIAL and not for reproduction without prior written consent. Ā© of the Sporting Exchange Limited.