Re-using WebDriver-based tests for client-side 
performance analysis : basics 
Minsk 2014 
Tsimafei Avilin 
Lead Software Test Automation Engineer - EPAM
PURPOSES 
CSPA & WebDriver - Agenda 
CSPA – what? why? how? 
CSPA – process initiation 
CSPA & WebDriver 
Tools & Examples 
References 
Re-using WebDriver-based tests for client-side 
performance analysis 
1 
2 
3 
4 
5
CSPA & WebDriver 
CSPA: WHEN DOES IT 
BEGIN? 
Re-using WebDriver-based tests for client-side 
performance analysis
PURPOSES 
CSPA – client-side begins… 
Re-using WebDriver-based tests for client-side 
performance analysis
CSPA & WebDriver 
STANDARD CSP 
PROBLEMS 
Re-using WebDriver-based tests for client-side 
performance analysis
STANDARD PROBLEMS 
CSPA – standard problems 
• Main: 
 javascript (memory leaking, 
loops, GC, etc.); 
 pictures; 
 gzip archive, DOM, 
 See e.g. Yslow rules here 
• Rare: css, silverlight, flash 
Re-using WebDriver-based tests for client-side 
performance analysis
CSPA & WebDriver 
WHEN TO START CSPA? 
Re-using WebDriver-based tests for client-side 
performance analysis
REFERENCES 
STARTING CSPA 
Re-using WebDriver-based tests for client-side 
performance analysis
CSPA & WebDriver 
CSPA &WEBDRIVER 
Re-using WebDriver-based tests for client-side 
performance analysis
REFERENCES 
• WebDriver + BrowserMob 
Proxy 
• Collect 
sessions/statistics (HAR 
files) 
• WebDriver + dynaTrace 
appl -> does work; 
• WebDriver + dynaTrace 
.dll -> does NOT work; 
CSPA&WebDriver 
Re-using WebDriver-based tests for client-side 
performance analysis
CSPA & WebDriver 
TOOLS&EXAMPLES 
Re-using WebDriver-based tests for client-side 
performance analysis
REFERENCES 
TOOLS & EXAMPLES 
ONLINE SERVICES 
• Yslow http://www.yslow.org 
• PageSpeed LINK 
• GTmetrix http://gtmetrix.com/ 
• webpagetest http://www.webpagetest.org/ 
ALL 
FREE! 
DESKTOP 
• dynaTrace AJAX edition LINK +command line + LINK 
Re-using WebDriver-based tests for client-side 
performance analysis
CSPA & WebDriver 
REFERENCES 
Re-using WebDriver-based tests for client-side 
performance analysis
REFERENCES 
REFERENCES 
• YSLOW http://www.yslow.org 
• JAKOB SCHROETER “CLIENT-SIDE WEB PERFORMANCE OPTIMIZATION” (2011) LINK 
• MARCEL DURAN “PROACTIVE WEB PERFORMANCE OPTIMIZATION” (RUM + (YSLOW + 
WPT) CI) (2012) LINK 
• COLT MCANLIS “A PERFORMANCE CHECKLIST FOR THE MOBILE WEB” (2013) LINK 
• МАРИНА ШИРОЧКИНА “ТЕСТИРОВАНИЕ ПРОИЗВОДИТЕЛЬНОСТИ КЛИЕНТСАЙДА” (2013) 
LINK 
• АЛЕКСЕЙ БАРАНЦЕВ “ТЕСТИРОВАНИЕ ПРОИЗВОДИТЕЛЬНОСТИ КЛИЕНТСАЙДА: ПРИКВЕЛ” 
(2014) LINK 
• ULADZIMIR KRYVENKA “BROWSERMOB PROXY: ТЕСТИРОВАНИЕ ПРОИЗВОДИТЕЛЬНОСТИ 
КЛИЕНТСКОЙ ЧАСТИ ВЕБ-ПРИЛОЖЕНИЙ” (2014) LINK 
• BOOMERANG GITHUB.COM/LOGNORMAL/BOOMERANG LINK 
• DYNATRACE COMMUNITY LINK 
Re-using WebDriver-based tests for client-side 
performance analysis
Thanks!!! 
Re-using WebDriver-based tests for client-side 
performance analysis

Client side performance analysis

  • 1.
    Re-using WebDriver-based testsfor client-side performance analysis : basics Minsk 2014 Tsimafei Avilin Lead Software Test Automation Engineer - EPAM
  • 2.
    PURPOSES CSPA &WebDriver - Agenda CSPA – what? why? how? CSPA – process initiation CSPA & WebDriver Tools & Examples References Re-using WebDriver-based tests for client-side performance analysis 1 2 3 4 5
  • 3.
    CSPA & WebDriver CSPA: WHEN DOES IT BEGIN? Re-using WebDriver-based tests for client-side performance analysis
  • 4.
    PURPOSES CSPA –client-side begins… Re-using WebDriver-based tests for client-side performance analysis
  • 5.
    CSPA & WebDriver STANDARD CSP PROBLEMS Re-using WebDriver-based tests for client-side performance analysis
  • 6.
    STANDARD PROBLEMS CSPA– standard problems • Main:  javascript (memory leaking, loops, GC, etc.);  pictures;  gzip archive, DOM,  See e.g. Yslow rules here • Rare: css, silverlight, flash Re-using WebDriver-based tests for client-side performance analysis
  • 7.
    CSPA & WebDriver WHEN TO START CSPA? Re-using WebDriver-based tests for client-side performance analysis
  • 8.
    REFERENCES STARTING CSPA Re-using WebDriver-based tests for client-side performance analysis
  • 9.
    CSPA & WebDriver CSPA &WEBDRIVER Re-using WebDriver-based tests for client-side performance analysis
  • 10.
    REFERENCES • WebDriver+ BrowserMob Proxy • Collect sessions/statistics (HAR files) • WebDriver + dynaTrace appl -> does work; • WebDriver + dynaTrace .dll -> does NOT work; CSPA&WebDriver Re-using WebDriver-based tests for client-side performance analysis
  • 11.
    CSPA & WebDriver TOOLS&EXAMPLES Re-using WebDriver-based tests for client-side performance analysis
  • 12.
    REFERENCES TOOLS &EXAMPLES ONLINE SERVICES • Yslow http://www.yslow.org • PageSpeed LINK • GTmetrix http://gtmetrix.com/ • webpagetest http://www.webpagetest.org/ ALL FREE! DESKTOP • dynaTrace AJAX edition LINK +command line + LINK Re-using WebDriver-based tests for client-side performance analysis
  • 13.
    CSPA & WebDriver REFERENCES Re-using WebDriver-based tests for client-side performance analysis
  • 14.
    REFERENCES REFERENCES •YSLOW http://www.yslow.org • JAKOB SCHROETER “CLIENT-SIDE WEB PERFORMANCE OPTIMIZATION” (2011) LINK • MARCEL DURAN “PROACTIVE WEB PERFORMANCE OPTIMIZATION” (RUM + (YSLOW + WPT) CI) (2012) LINK • COLT MCANLIS “A PERFORMANCE CHECKLIST FOR THE MOBILE WEB” (2013) LINK • МАРИНА ШИРОЧКИНА “ТЕСТИРОВАНИЕ ПРОИЗВОДИТЕЛЬНОСТИ КЛИЕНТСАЙДА” (2013) LINK • АЛЕКСЕЙ БАРАНЦЕВ “ТЕСТИРОВАНИЕ ПРОИЗВОДИТЕЛЬНОСТИ КЛИЕНТСАЙДА: ПРИКВЕЛ” (2014) LINK • ULADZIMIR KRYVENKA “BROWSERMOB PROXY: ТЕСТИРОВАНИЕ ПРОИЗВОДИТЕЛЬНОСТИ КЛИЕНТСКОЙ ЧАСТИ ВЕБ-ПРИЛОЖЕНИЙ” (2014) LINK • BOOMERANG GITHUB.COM/LOGNORMAL/BOOMERANG LINK • DYNATRACE COMMUNITY LINK Re-using WebDriver-based tests for client-side performance analysis
  • 15.
    Thanks!!! Re-using WebDriver-basedtests for client-side performance analysis