Show Me the Numbers: Automated Browser
-
Upload
colleenfry -
Category
Technology
-
view
306 -
download
0
Transcript of Show Me the Numbers: Automated Browser
![Page 1: Show Me the Numbers: Automated Browser](https://reader033.fdocuments.in/reader033/viewer/2022060107/554a12d1b4c9058c5d8b4c1a/html5/thumbnails/1.jpg)
![Page 2: Show Me the Numbers: Automated Browser](https://reader033.fdocuments.in/reader033/viewer/2022060107/554a12d1b4c9058c5d8b4c1a/html5/thumbnails/2.jpg)
CHRIS MOUNTFORD • SENIOR DEVELOPER , J IRA • ATLASS IAN • @CHROMOSUNDRIFT
Show Me the NumbersAUTOMATED BROWSER PERFORMANCE TESTING
![Page 3: Show Me the Numbers: Automated Browser](https://reader033.fdocuments.in/reader033/viewer/2022060107/554a12d1b4c9058c5d8b4c1a/html5/thumbnails/3.jpg)
20053.4.17425
![Page 4: Show Me the Numbers: Automated Browser](https://reader033.fdocuments.in/reader033/viewer/2022060107/554a12d1b4c9058c5d8b4c1a/html5/thumbnails/4.jpg)
Inline Edit
Search
Detail View
![Page 5: Show Me the Numbers: Automated Browser](https://reader033.fdocuments.in/reader033/viewer/2022060107/554a12d1b4c9058c5d8b4c1a/html5/thumbnails/5.jpg)
Browser Performance Testing
![Page 6: Show Me the Numbers: Automated Browser](https://reader033.fdocuments.in/reader033/viewer/2022060107/554a12d1b4c9058c5d8b4c1a/html5/thumbnails/6.jpg)
Measuring the perceived
performance of specific interactions for a single user ”“
![Page 7: Show Me the Numbers: Automated Browser](https://reader033.fdocuments.in/reader033/viewer/2022060107/554a12d1b4c9058c5d8b4c1a/html5/thumbnails/7.jpg)
Measuring the perceived
performance of specific interactions for a single user ”“
![Page 8: Show Me the Numbers: Automated Browser](https://reader033.fdocuments.in/reader033/viewer/2022060107/554a12d1b4c9058c5d8b4c1a/html5/thumbnails/8.jpg)
JavaScript Timeline
![Page 9: Show Me the Numbers: Automated Browser](https://reader033.fdocuments.in/reader033/viewer/2022060107/554a12d1b4c9058c5d8b4c1a/html5/thumbnails/9.jpg)
Classical JavaScript
1995
![Page 10: Show Me the Numbers: Automated Browser](https://reader033.fdocuments.in/reader033/viewer/2022060107/554a12d1b4c9058c5d8b4c1a/html5/thumbnails/10.jpg)
Just text by itself, for impact.
![Page 11: Show Me the Numbers: Automated Browser](https://reader033.fdocuments.in/reader033/viewer/2022060107/554a12d1b4c9058c5d8b4c1a/html5/thumbnails/11.jpg)
![Page 12: Show Me the Numbers: Automated Browser](https://reader033.fdocuments.in/reader033/viewer/2022060107/554a12d1b4c9058c5d8b4c1a/html5/thumbnails/12.jpg)
“Why do we split everything into so many files?”
“Performance.”
![Page 13: Show Me the Numbers: Automated Browser](https://reader033.fdocuments.in/reader033/viewer/2022060107/554a12d1b4c9058c5d8b4c1a/html5/thumbnails/13.jpg)
“Why do we merge all the files into large batches?”
“Performance.”
![Page 14: Show Me the Numbers: Automated Browser](https://reader033.fdocuments.in/reader033/viewer/2022060107/554a12d1b4c9058c5d8b4c1a/html5/thumbnails/14.jpg)
“Why...”
“Performance!”
![Page 15: Show Me the Numbers: Automated Browser](https://reader033.fdocuments.in/reader033/viewer/2022060107/554a12d1b4c9058c5d8b4c1a/html5/thumbnails/15.jpg)
Show me the numbers!
NOT JACKY CHAN
”“
![Page 16: Show Me the Numbers: Automated Browser](https://reader033.fdocuments.in/reader033/viewer/2022060107/554a12d1b4c9058c5d8b4c1a/html5/thumbnails/16.jpg)
If we have data, let’s look at
data. If all we have are opinions, let’s go with mine.
J IM BARKSDALE
”“
![Page 17: Show Me the Numbers: Automated Browser](https://reader033.fdocuments.in/reader033/viewer/2022060107/554a12d1b4c9058c5d8b4c1a/html5/thumbnails/17.jpg)
Performance has many enemies
![Page 18: Show Me the Numbers: Automated Browser](https://reader033.fdocuments.in/reader033/viewer/2022060107/554a12d1b4c9058c5d8b4c1a/html5/thumbnails/18.jpg)
The Mobile Web
• network / radio power mode steps, sleep, etc.
• cpu / battery impact
• memory
• standards compliance
• tooling
E V E R Y T H I N G I S T H E S A M E B U T W O R S E
![Page 19: Show Me the Numbers: Automated Browser](https://reader033.fdocuments.in/reader033/viewer/2022060107/554a12d1b4c9058c5d8b4c1a/html5/thumbnails/19.jpg)
NETWORK TIME
![Page 20: Show Me the Numbers: Automated Browser](https://reader033.fdocuments.in/reader033/viewer/2022060107/554a12d1b4c9058c5d8b4c1a/html5/thumbnails/20.jpg)
PARSE T IME
![Page 21: Show Me the Numbers: Automated Browser](https://reader033.fdocuments.in/reader033/viewer/2022060107/554a12d1b4c9058c5d8b4c1a/html5/thumbnails/21.jpg)
• JS Engines
• native bind(), map() etc
• V8: hidden classes, arrays, gc
• DOM Manipulation
• events
• JQuery
• Sizzle selectors
• Memory leaks
JavaScript Execution
![Page 22: Show Me the Numbers: Automated Browser](https://reader033.fdocuments.in/reader033/viewer/2022060107/554a12d1b4c9058c5d8b4c1a/html5/thumbnails/22.jpg)
BLOCKING
<SCRIPT SRC=”WTF . JS”>
![Page 23: Show Me the Numbers: Automated Browser](https://reader033.fdocuments.in/reader033/viewer/2022060107/554a12d1b4c9058c5d8b4c1a/html5/thumbnails/23.jpg)
Tools
Chrome DevTools, Chrome WTFFirebug Lite dynaTrace
![Page 24: Show Me the Numbers: Automated Browser](https://reader033.fdocuments.in/reader033/viewer/2022060107/554a12d1b4c9058c5d8b4c1a/html5/thumbnails/24.jpg)
Reflow
![Page 25: Show Me the Numbers: Automated Browser](https://reader033.fdocuments.in/reader033/viewer/2022060107/554a12d1b4c9058c5d8b4c1a/html5/thumbnails/25.jpg)
![Page 26: Show Me the Numbers: Automated Browser](https://reader033.fdocuments.in/reader033/viewer/2022060107/554a12d1b4c9058c5d8b4c1a/html5/thumbnails/26.jpg)
Will It Reflow?inspired by @stoyanstefanov
Yes!
![Page 27: Show Me the Numbers: Automated Browser](https://reader033.fdocuments.in/reader033/viewer/2022060107/554a12d1b4c9058c5d8b4c1a/html5/thumbnails/27.jpg)
• CSS Transforms
• Hardware acceleration?
• Data weight
• Concurrent request count
• Inline Base64 Encoded resources
But wait, there’s more!
![Page 28: Show Me the Numbers: Automated Browser](https://reader033.fdocuments.in/reader033/viewer/2022060107/554a12d1b4c9058c5d8b4c1a/html5/thumbnails/28.jpg)
Designing the JIRA Browser Performance
Test Suite
![Page 29: Show Me the Numbers: Automated Browser](https://reader033.fdocuments.in/reader033/viewer/2022060107/554a12d1b4c9058c5d8b4c1a/html5/thumbnails/29.jpg)
Page Objects
Soke Framework Bamboo
Hacking
Koto Charts
Psycho Events
Baselines
OnDemandAnalytics
Vigilance
DBPlugin
Automated JIRA Browser Performance Tests
![Page 30: Show Me the Numbers: Automated Browser](https://reader033.fdocuments.in/reader033/viewer/2022060107/554a12d1b4c9058c5d8b4c1a/html5/thumbnails/30.jpg)
• Define Timed Sections
• Number of Repetitions
• Personas
Soke Interactions
Mad Props to
Atlassian PerfEng Team
![Page 31: Show Me the Numbers: Automated Browser](https://reader033.fdocuments.in/reader033/viewer/2022060107/554a12d1b4c9058c5d8b4c1a/html5/thumbnails/31.jpg)
Soke Interactions In Scala
![Page 32: Show Me the Numbers: Automated Browser](https://reader033.fdocuments.in/reader033/viewer/2022060107/554a12d1b4c9058c5d8b4c1a/html5/thumbnails/32.jpg)
![Page 33: Show Me the Numbers: Automated Browser](https://reader033.fdocuments.in/reader033/viewer/2022060107/554a12d1b4c9058c5d8b4c1a/html5/thumbnails/33.jpg)
![Page 34: Show Me the Numbers: Automated Browser](https://reader033.fdocuments.in/reader033/viewer/2022060107/554a12d1b4c9058c5d8b4c1a/html5/thumbnails/34.jpg)
• Batching
• Atlassian Plugins, No Worries
• Predictive Fetching
• Guided by Analytics
• Caching
• Watch for memory leaks
Optimization Techniques
![Page 35: Show Me the Numbers: Automated Browser](https://reader033.fdocuments.in/reader033/viewer/2022060107/554a12d1b4c9058c5d8b4c1a/html5/thumbnails/35.jpg)
I don’t know... it just feels slow.
A J IRA PRODUCT MANAGER
”“
![Page 36: Show Me the Numbers: Automated Browser](https://reader033.fdocuments.in/reader033/viewer/2022060107/554a12d1b4c9058c5d8b4c1a/html5/thumbnails/36.jpg)
Perception is Reality
![Page 37: Show Me the Numbers: Automated Browser](https://reader033.fdocuments.in/reader033/viewer/2022060107/554a12d1b4c9058c5d8b4c1a/html5/thumbnails/37.jpg)
![Page 38: Show Me the Numbers: Automated Browser](https://reader033.fdocuments.in/reader033/viewer/2022060107/554a12d1b4c9058c5d8b4c1a/html5/thumbnails/38.jpg)
• Ready for Action
• When does the User believe the app is waiting for her?
• Manual “psycho” event placement
• and maintenance!
• Yardstick tuning against a real system
• Optimization Example: Execution Reordering
Psycho Latency
![Page 39: Show Me the Numbers: Automated Browser](https://reader033.fdocuments.in/reader033/viewer/2022060107/554a12d1b4c9058c5d8b4c1a/html5/thumbnails/39.jpg)
Gotchas
![Page 40: Show Me the Numbers: Automated Browser](https://reader033.fdocuments.in/reader033/viewer/2022060107/554a12d1b4c9058c5d8b4c1a/html5/thumbnails/40.jpg)
click( )
![Page 41: Show Me the Numbers: Automated Browser](https://reader033.fdocuments.in/reader033/viewer/2022060107/554a12d1b4c9058c5d8b4c1a/html5/thumbnails/41.jpg)
• Chromedriver implemented by Chromium team
• mouse click on geometric centre of target
• W3C Webdriver wire protocol draft
• OK Browsers, follow the standard!
Selenium / Webdriver
![Page 42: Show Me the Numbers: Automated Browser](https://reader033.fdocuments.in/reader033/viewer/2022060107/554a12d1b4c9058c5d8b4c1a/html5/thumbnails/42.jpg)
• Windows and IE process control• Browser auto-upgrades• Changing what you measure
• Prefetch cache benefit in JIRA 6.0
Selenium / Webdriver
![Page 43: Show Me the Numbers: Automated Browser](https://reader033.fdocuments.in/reader033/viewer/2022060107/554a12d1b4c9058c5d8b4c1a/html5/thumbnails/43.jpg)
Takeaway tweets:
#atlassiansummit
• Performance has many enemies
• Be holistic, be quantitative, beware the micro-optimization trap
• Perception is Reality
• The price of performance is eternal vigilance
![Page 44: Show Me the Numbers: Automated Browser](https://reader033.fdocuments.in/reader033/viewer/2022060107/554a12d1b4c9058c5d8b4c1a/html5/thumbnails/44.jpg)
Thank you!
CHRIS MOUNTFORD • SENIOR DEVELOPER , J IRA • ATLASS IAN • @CHROMOSUNDRIFT
![Page 45: Show Me the Numbers: Automated Browser](https://reader033.fdocuments.in/reader033/viewer/2022060107/554a12d1b4c9058c5d8b4c1a/html5/thumbnails/45.jpg)
Text code below to 22333or visit http://bit.ly/197mpCa
Show Me the Numbers: Automated Browser
To join this session, send text 136888 to
AWESOME = 48
PRETTY GOOD = 47
NOT BAD = 46
MEH = 45
Rate this Talk