Documente Academic
Documente Profesional
Documente Cultură
!
!
TO!
Half$day(Tutorials(
1:00(PM(
(
(
(
(
(
Performance!Testing!Services!for!Web!
and!CloudSBased!Architectures!
!
Presented!by:((
(
! Amber!Race!
(
Big!Fish!Games!
!
Brought!to!you!by:!(
!(
!
!
(
!
350(Corporate(Way,(Suite(400,(Orange(Park,(FL(32073((
888$$ 268$$ 8770(FF(904$$ 278$$ 0524($(info@techwell.com($(http://www.starwest.techwell.com/(((
(
((
!
Amber!Race!
!
Amber!Race!is!a!senior!software!development!engineer!in!test!at!Big!Fish!Games.!
After!majoring!in!Asian!studies,!teaching!in!Japan,!and!traveling!the!world,!she!
stumbled!into!software!testing!and!has!been!loving!it!ever!since.!Amber!has!more!
than!fifteen!years!of!testing!experience!at!Big!Fish!and!Microsoft,!doing!everything!
from!manual!application!testing!to!tools!development!to!writing!automation!
frameworks!for!web!services.!She!has!worked!on!a!wide!variety!of!products!and!
written!automation!in!C#,!C++,!Python,!and!Java.!Amber!currently!specializes!in!test!
automation!and!performance!testing!for!high=volume!back=end!services!supporting!
iOS!and!Android!games.!
!
9/10/18&
INTRODUCTION
1&
9/10/18&
AGENDA
BASIC CONCEPTS
2&
9/10/18&
W H AT I S
PERFORMANCE
A N D L OA D
TESTING?
PERFORMANCE LOAD
• Response time for individual • How the back-end services
requests perform with a high volume
of requests
• Includes time to render the
page • Includes CPU, memory
usage, and database traffic
• Performance issues on the
client are very visible • High load can affect
performance and vice-versa
• Lots of variance due to
network conditions
3&
9/10/18&
4&
9/10/18&
Image Compression
WHAT TO Caching
LOOK FOR
Content Delivery Network (CDN)
Background Requests
TOOLS
5&
9/10/18&
6&
9/10/18&
Proxies
• Charlesproxy
• Fidler
• Blazemeter
• Flood.io
7&
9/10/18&
FIGURING
What APIs are the “heaviest”
OUT WHAT
TO TEST
What APIs are most critical
MONITORING
8&
9/10/18&
Session Based
– replicates a Stress – push
part or all of a services to
typical user the limit
session
KINDS OF
TESTS
Benchmark –
Soak tests –
quick tests
run for a long
run in a CI
time
pipeline
9&
9/10/18&
Location
CLOUD
C O N S I D E R AT I O N S
Scaling VM Type
SERVERLESS TESTING
10&
9/10/18&
S E RV E R L E S S I S
S E RV E R S , J U S T
IN SMALLER
P O RT I O N S
11&
9/10/18&
JMETER
12&
9/10/18&
JMETER IS
JMeter can fetch page resources,
NOT A but it will not render images
BROWSER!!!!
JMETER SETUP
• http://jmeter.apache.org/download_jmeter.cgi
• Requires Java 8 or higher
• Download zip file and expand anywhere in your PATH.
• Create shortcut
• Windows: jmeter/bin/jmeter.bat
• Mac: jmeter/bin/jmeter
• Download plugin-manager.jar from
https://jmeter-plugins.org/get/
• Move jar to the lib/ext folder in your JMeter installation
13&
9/10/18&
GATLING
14&
9/10/18&
GATLING SETUP
• https://gatling.io/download/
• Requires Java 8 or higher
• Download zip file and expand anywhere in your PATH.
• Set GATLING_HOME to the main gatling directory
• Create shortcut
• Windows: GATLING_HOME/bin/gatling.bat
• Mac: GATLING_HOME/bin/gatling.bat
• Recorder is in the same directory as recorder.*
15&
9/10/18&
JMETER VS GATLING
JMETER GATLING
• Java based • Scala based
• Graphic Interface • Scripting interface
• Mature plugin ecosystem
• Remote capability
16&
9/10/18&
http://onlinestatbook.com/2/calculators/normal_dist.html
Amber Race - @ambertests
17&
9/10/18&
CALCULATING LOAD
DEMO: HEADLESS
JMETER
18&
9/10/18&
REPORTING RESULTS
19&
9/10/18&
SO MANY
STATISTICS, SO 3 Nines? 5 Nines?
LITTLE TIME
Sampling frequency
20&
9/10/18&
AWS CLOUDWATCH
Beware of coordinated
INT ERPRETING
RESULTS omission, which masks
potential performance issues
21&
9/10/18&
Actual Actual
production production base
hardware load
RUNNING
TESTS IN
PRODUCTION With proper
monitoring, you Be sure to tell
can stop your your ops team
test before it what you are
brings down doing!
production
22&
9/10/18&
QUESTIONS?
• Contact me!
• Email: amber.race@outlook.com
• Twitter: @ambertests
• Restful Booker - great for all kinds of API test
practice!
• Mark Winteringham (@2bittester)
• https://restful-booker.herokuapp.com
23&